String[] ln = read.nextLine().split("\\.");
为什么我必须逃避 .
?我以为我已经将它定义为一个""
的字符串,它不再是分隔符了。
答案 0 :(得分:9)
函数split
将regular expression作为参数。符号.
在正则表达式中具有特殊含义,表示“匹配任何字符”。使用反斜杠,您可以转义其正则表达式含义并将其与普通字符匹配。或者正如OldCurmudgeon指出的那样,完全逃避正则表达式的推荐方法是使用Pattern.quote(".")