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 に答える