我用perl的,Unix和Java的正则表达式很多时间,但我在Java中很惊讶有关:字符串相匹配的正则表达式
"help".matches("^h")
是假的!
从Java文件: http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#matches-java.lang.String-)
“当且仅当此字符串给定的正则表达式匹配”
"help".matches("^h.*")
或
"help".matches("^h.*$")
当然真正的回报。
只有我感到惊讶吗?
是什么问题?我们感到惊讶吗? – amit
因为似乎表达式被解释为'“^表达$”'在它的末尾添加一个'$'。我也期待与第一个例子的匹配。 – Matteo
Java的正则表达式是愚蠢的。你是完全正确的。该方法匹配IS破碎。看看这里:http://mentaregex.soliveirajr.com – TraderJoeChicago