我需要执行以下检查:
如果myString.contains()
除
之外的任何字符字母a-z,A-Z,“_”,“ - ”,数字0-9
然后......
什么是这种检查的正确java语法?
答案 0 :(得分:11)
您可以使用正则表达式
Pattern badChar = Pattern.compile("[^A-Za-z0-9_-]");
if(badChar.matcher(myString).find()) {
// ...
}
此模式将匹配除字母,数字,下划线和连字符之外的任何单个字符。
答案 1 :(得分:1)
myString.matches("[^a-zA-Z0-9_-]*");
答案 2 :(得分:0)
这样做会
String str1 =“abc,pqr”; 模式模式= Pattern.compile(“^ [a-zA-Z0-9 ._, - ] +”);
Matcher matcher1 = pattern.matcher(str1);
System.out.println(matcher1.matches());