我的代码在
下面public static void main(String[] args) {
System.out.println(validateusername("$asd123"));
}
static boolean validateusername(String s)
{
if(s.matches("[a-zA-z]+[0-9]*"))
return true;
else return false;
}
这为'提供 true [abc1'
'不应将[' 字符视为 a-zA-z ,为何其提供 true 。
但对于任何其他特殊角色,它都是虚假的,' _'(下划线)和' ['这是真的;
我尝试了什么 -
- 我试过把'字符串开头的^' 但它仍无法正常工作。
- 我试图逃避' [' 字符通过' /' ,不工作。
答案 0 :(得分:4)
您的模式为[a-zA-z]
,您在角色类中提到了A
到z
的范围。 [
符号位于大写A
到小z
的范围内,因此返回true。
请参阅ASCII table以了解A
到z
范围内的符号。