我想檢測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