如果String值包含任何不是数字[0-9],连字符(-),分号(;)或感叹号的不同字符,我想抛出异常(!).
例如,这是一个完全正确的字符串:1; 3; 5-9;!12-14
但这个不是:1; 3abc; 5~9;?12*41
我正在尝试使用下面的代码,但它总是失败:
String values = "1;3;5-9;!12-14"
Pattern pattern = Pattern.compile("[\\d*]|[\\;]|[\\-]|[\\!]");
if (!pattern.matcher(values).matches()) {
throw new Exception();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56 次 |
| 最近记录: |