4

我想使用多个字符分隔符拆分字符串,但我也想存储分隔符。我的分隔符是()+-*/

例如,如果我有一个字符串

26+78(12*23)-16

我想得到

26

+

78

(

12

*

23

)

-

16

每行作为一个单独的数组元素。

我认为你不能使用拆分功能来实现这一点。但是,我对 string-tokenizer 的试用也失败了。我怎样才能做到这一点?

4

1 回答 1

9

如果不是星期六晚上,我不会回答:

    String s1 = "26+78(12*23)-16";
    for(String s: s1.split("(?<=[()+*/-])|(?=[()+*/-])")){
        System.out.println(">> " + s);
    }

给出:

>> 26
>> +
>> 78
>> (
>> 12
>> *
>> 23
>> )
>> -
>> 16
于 2012-12-15T18:04:01.403 回答