当我按如下方式分割字符串时,
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也有两个元素。
答案 0 :(得分:8)
String.split()
需要正则表达式。 |
是 regex 引擎中的特殊字符,您需要使用\\|
转义它或使用Pattern.quote()
。