我想检测Unicode字母的单词(\p{L}
)。Scala中的Unicode正则表达式REPL
Scala的REPL还给false
为下面的语句,而在Java是true
(这是正确的行为):
java.util.regex.Pattern.compile("\\p{L}").matcher("ä").matches()
无论是Java和Scala在JRE 1.7上运行:
System.getProperty("java.version")
给回"1.7.0_60-ea"
可能是什么原因?
见http://stackoverflow.com/questions/5315330/matching-ega-unicode-letter-with-java-regexps为什么你的正则表达式是不是很足够。你需要'\ p {L} \ p {M} *' –
+1。我没有考虑到这一点。 – pvorb