1

我正在尝试拆分一个字符串,例如:“@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

关于如何获得确切的两个字符串的任何想法?

4

3 回答 3

4
    String[] str = expression.split("@K");
    System.out.println(Arrays.toString(str));

试试 String#split("@K");

输出:

[@WWP2-@POLUXDATAWWP3-TTTTTW, 826]
于 2013-02-21T16:17:50.603 回答
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字符串拆分为分隔符字符串中的所有单个字符,即 on@ K

另请参阅为什么不推荐使用 StringTokenizer?.

于 2013-02-21T16:20:10.913 回答
0

StringTokenizer如果它包含多个字符,将使用给定的分隔符参数作为一组字符。在您的情况下,它会将您的字符串拆分为@K,而K不一定要遵循@

于 2013-02-21T16:24:27.987 回答