我有字符串:
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();
}