使用|拆分字符串时的不同行为和/ /

时间:2015-08-26 10:18:00

标签: java

当我按如下方式分割字符串时,

String s1 = "id::34|desc::test";
String s2 = "id::34/desc::test";

String [] s1a = s1.split("|");
String [] s2a = s2.split("/");

为什么s1a数组包含s1的每个字符的元素,其中s2a只有两个元素,即id :: 34和desc :: test。

我期待s1a也有两个元素。

1 个答案:

答案 0 :(得分:8)

String.split()需要正则表达式| regex 引擎中的特殊字符,您需要使用\\|转义它或使用Pattern.quote()