奇怪的String.split(“\ n”)行为

时间:2010-12-27 15:53:48

标签: java split

我有一个.txt文本文件,包含一些行.. 我使用RequestBuilder对象加载包含,并使用分割responseText words = String.split(“\ n”);但我想知道,为什么结果包含“\ n”部分.. 例如,我的文字:

abc
def
ghi

结果是,

words[0] = "abc\n"
words[1] = "def\n"
words[2] = "ghi\n"

非常感谢任何帮助。提前谢谢。

5 个答案:

答案 0 :(得分:18)

尝试使用string.split("\\n+")。甚至更好 - split("[\\r\\n]+")

答案 1 :(得分:10)

Windows回车符("\r\n")不应对结果产生明显的影响,也不需要转义传递给String.split()的正则表达式。

以下是使用str.split("\n")http://ideone.com/4PnZi

的上述证据

如果你但是有了回车,你应该(尽管严格来说没有必要)使用str.split("\r\n")http://ideone.com/XcF3C

答案 2 :(得分:5)

您可能还想考虑String[] lines = text.split("\\\\n");

答案 3 :(得分:2)

如果拆分使用正则表达式,则应使用“\\ n”而不是“\ n”

答案 4 :(得分:0)

尝试使用 string.split("\\\\n") 。它对我有用。