3

我正在做一个项目,我必须打破一个包含字符和整数的字符串

说String string = hi,我有1,000rs。

上面的字符串必须分成两个字符串,因为
string1=hi
string2=i 有 1,000rs。
但是通过以下逻辑,我可以将其划分为
string1=hi
string2=i have 1
string3=000rs。
谁能帮我解决这个问题。

StringTokenizer strTokenizer=new StringTokenizer(string,",");    
while(strTokenizer.hasMoreTokens()){    
String temp=strTokenizer.nextToken();    
}    
4

2 回答 2

5

尝试

    String[] a = "Say String string=hi,i have 1,000rs.".split(",(?!\\d)");
    for(String e : a) {
        System.out.println(e);
    }

输出

Say String string=hi
i have 1,000rs.

更新

"(?<!\\d),|,(?!\\d)"似乎更可靠

于 2013-04-23T06:48:24.143 回答
-1

尝试这个:

String s="hi,i have 1,000rs.";
String[] splitted =s.split(",(?=([^\\d]*\\d[^\\d]*\\d)*[^\\d]*$)");
for(String ss: splitted)
    System.out.println(ss);

输出:

hi
i have 1,000rs.
于 2013-04-23T06:51:22.303 回答