我的代码:
result ="sub||hi";
String[] results = result.split("||");
我想:
results [0]=sub
results [1]=hi
但我得到:
result[0]=s
result[1]=u
result[2]=b
result[3]=h
result[4]=s
我的代码:
result ="sub||hi";
String[] results = result.split("||");
我想:
results [0]=sub
results [1]=hi
但我得到:
result[0]=s
result[1]=u
result[2]=b
result[3]=h
result[4]=s
利用
String[] results = result.split("\\|");
请注意,public String[] split(String regex)需要一个regex。
您需要转义特殊的 char |
。
转义正则表达式由 完成\
,但在 Java 中,\
写为\\
.
值得一提的替代解决方案:
您可以使用public static String quote(String s) “返回指定字符串的文字模式字符串”:
String[] result = result.split(Pattern.quote("|"));
现在,|
将被视为字符 |
而不是|
具有特殊含义的正则表达式。
您需要|
正确转义:
String[] results = result.split("\\|");
另一种方法是使用Pattern
:
String[] results = result.split(Pattern.quote("|"));