java正则表达式模式匹配器失败
我想知道为什么我下面的正则表达式模式匹配器失败了
我加入了?A-Za-z0-9
来加入字符和数字
System.out.print(Pattern.compile("[?A-Za-z0-9]").matcher("aa22Aa?").matches());
你可以在下面搜索框中键入要查询的问题!
我想知道为什么我下面的正则表达式模式匹配器失败了
我加入了?A-Za-z0-9
来加入字符和数字
System.out.print(Pattern.compile("[?A-Za-z0-9]").matcher("aa22Aa?").matches());
# 1 楼答案
试试
"[?A-Za-z0-9]+"
# 2 楼答案
?A-Za-z0-9
将只匹配集合中定义的特定字符的单个匹配项需要向模式中添加
+
量词,以便一个或多个字符匹配您可以使用
Pattern
类的.matches()
函数编译模式并将其与字符串匹配,而不是调用.compile()
函数来编译模式,然后调用.matcher()
函数来创建Matcher
编辑:
正如@Andreas正确指出的,您还可以使用
String
类的.matches()
函数