我有字符串:
2|家用电器| |0|0| | | | |0| |
我想分隔|
上面字符串中由分隔的所有标记。
我试图用它来标记它,StringTokenizer
但它不认为空间是一个标记。
另外,我尝试过,split("|")
但它将上述字符串的每个字符作为返回的字符串数组中的元素。
我应该怎么办?
我有字符串:
2|家用电器| |0|0| | | | |0| |
我想分隔|
上面字符串中由分隔的所有标记。
我试图用它来标记它,StringTokenizer
但它不认为空间是一个标记。
另外,我尝试过,split("|")
但它将上述字符串的每个字符作为返回的字符串数组中的元素。
我应该怎么办?
尝试
string.split("\\|");
|
是一个特殊字符,必须用转义字符分隔\
。在 Java\
中写为\\
.
那是因为String#split()将正则表达式作为参数。
在正则表达式中,必须转义特殊字符,如.
, |
,等。(
否则,Java 会认为您实际上是在使用特殊的字符(例如|
表示OR)。
尝试 Scanner 而不是 StringTokenizer
Scanner sc = new Scanner(str);
sc.useDelimiter("\\|");
while(sc.hasNext()) {
String e = sc.next();
}