Java 使用正则表达式将符号添加到字母数字检查
我使用此代码检查字符串是否包含非字母数字字符:Java 使用正则表达式将符号添加到字母数字检查,java,regex,Java,Regex,我使用此代码检查字符串是否包含非字母数字字符: private boolean checkNonAlphanumeric(String text) { Pattern p = Pattern.compile("[^a-zA-Z0-9]"); return p.matcher(text).find(); } 这个很好用。但现在我需要检查这个添加一些符号。在本例中为“-”。在这种情况下,我应该使用什么模式 ABCabc-ABC1234=应该正常。 a!#$%#=应该是错误 谢谢 仅
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9]");
return p.matcher(text).find();
}
这个很好用。但现在我需要检查这个添加一些符号。在本例中为“-”。在这种情况下,我应该使用什么模式
ABCabc-ABC1234=应该正常。
a!#$%#=应该是错误
谢谢 仅针对字母数字和
-
使用以下选项:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[a-zA-Z0-9-]*");
return p.matcher(text).find();
}
仅针对字母数字和
-
使用以下选项:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[a-zA-Z0-9-]*");
return p.matcher(text).find();
}
您可以使用:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9\\-]");
return p.matcher(text).find();
}
我建议添加双斜杠,以确保如果将来更改正则表达式,-,将继续以正确的方式进行解释
如果只使用-,然后决定在-,之前或之后添加其他字符,则不会起作用。例如:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9<->]");
return p.matcher(text).find();
}
private boolean checkNonAlphanumeric(字符串文本){
模式p=模式编译(“[^a-zA-Z0-9]”);
返回p.matcher(text.find();
}
将不匹配-,但以下代码将起作用:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9<\\->]");
return p.matcher(text).find();
}
private boolean checkNonAlphanumeric(字符串文本){
模式p=模式编译(“[^a-zA-Z0-9]”);
返回p.matcher(text.find();
}
您可以使用:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9\\-]");
return p.matcher(text).find();
}
我建议添加双斜杠,以确保如果将来更改正则表达式,-,将继续以正确的方式进行解释
如果只使用-,然后决定在-,之前或之后添加其他字符,则不会起作用。例如:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9<->]");
return p.matcher(text).find();
}
private boolean checkNonAlphanumeric(字符串文本){
模式p=模式编译(“[^a-zA-Z0-9]”);
返回p.matcher(text.find();
}
将不匹配-,但以下代码将起作用:
private boolean checkNonAlphanumeric(String text) {
Pattern p = Pattern.compile("[^a-zA-Z0-9<\\->]");
return p.matcher(text).find();
}
private boolean checkNonAlphanumeric(字符串文本){
模式p=模式编译(“[^a-zA-Z0-9]”);
返回p.matcher(text.find();
}
是否将字符添加到末尾?像[^a-zA-Z0-9-]
只需在末尾添加字符?像[^a-zA-Z0-9-]