琐碎的正则表达式的问题(答案最有可能是针对Java):为什么这个正则表达式在Java中没有像预期的那样工作?
"#This is a comment in a file".matches("^#")
这返回false。据我所知,^
意味着它总是意味着什么,并且#
没有特别的意义,所以我会将^#
翻译为字符串开头的“A'#”。应该匹配。所以它在Perl中有:
perl -e "print '#This is a comment'=~/^#/;"
打印“1”。所以我很确定答案是Java特定的。有人请赐教吗?
谢谢。
这是正确的答案,谢谢。这是记录在某处吗?因为我无法从String.matches的文档中读到这个:“判断这个字符串是否与给定的正则表达式匹配。”听起来不像你所描述的那样。 – 0xCAFEBABE 2011-01-25 10:02:18
我一直理解“匹配”来暗示“整个输入”,但我已经在上面添加了完整的解释(以及如何找到它)。 – 2011-01-25 10:11:12
谢谢一堆。 – 0xCAFEBABE 2011-01-25 10:12:21