java:想检查一个String变量是否包含英文字母和数字之外的字符,用matches()方法如何

java:想检查一个String变量是否包含英文字母和数字之外的字符,用matches()方法如何实现?下面的写法为什么是返回false?
String str="ab23+";
system.out.print(str.matches("[^a-zA-Z0-9]+");

试试这个:
System.out.print(str.matches("^[a-zA-Z0-9]+$"));
当字符串是字母和数字组成时返回true;否则返回false。你的str中有+号当然是false了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-03
system.out.print(str.matches(".*[^a-zA-Z0-9]+.*");本回答被提问者采纳
相似回答