为什么单管道字符会混淆java split方法?

时间:2013-09-13 04:37:33

标签: java parsing

尝试以下方法:

String[] = "abcde|12345|xyz".split("|");

结果不会像(至少我......)预期的那样。

使用任何其他角色似乎没问题。

String[] = "abcde,12345,xyz".split(",");

那么管道有什么特别之处呢?

2 个答案:

答案 0 :(得分:15)

Java String.split()期望RegExp和管道字符在RegExps中具有除逗号之外的特殊含义。请尝试以下方法:

String[] = "abcde|12345|xyz".split("\\|");

答案 1 :(得分:7)

split方法期待正则表达式,并且“|”是正则表达式世界中的一个特殊角色:http://www.tutorialspoint.com/java/java_string_split.htm