我正在尝试分割一个字符串:“@ WWP2- @ POLUXDATAWWP3-TTTTTW @ K826”来提取@ WWP2- @ POLUXDATAWWP3-TTTTTW和826个字符串 执行代码段时:
String expression = "@WWP2-@POLUXDATAWWP3-TTTTTW@K826";
StringTokenizer tokenizer = new StringTokenizer(expression, "@K");
if (tokenizer.countTokens() > 0) {
while (tokenizer.hasMoreTokens()) {
System.out.println(tokenizer.nextToken());
}
}
期待结果
WWP2-POLUXDATAWWP3-TTTTTW
826
我得到了:
WWP2-
POLUXDATAWWP3-TTTTTW
826
关于如何获得确切的两个字符串的任何想法?
答案 0 :(得分:4)
String[] str = expression.split("@K");
System.out.println(Arrays.toString(str));
尝试String#split(“@ K”);
输出:
[@WWP2-@POLUXDATAWWP3-TTTTTW, 826]
答案 1 :(得分:0)
String expression = "@WWP2-@POLUXDATAWWP3-TTTTTW@K826";
String [] strArr = expression.split("@K");
for( int i = 0; i < strArr.length; i++ ) {
System.out.println( strArr[i] );
}
StringTokenizer
在分隔符字符串中的所有单个字符上拆分字符串,即在@
和 K
上。
答案 2 :(得分:0)
StringTokenizer
包含多个char,它将使用给定的delimiter参数作为一组chars。在您的情况下,它会将您的字符串分为@
和K
,而K
不一定必须跟@
。