Ers*_*ker 4 java regex stringtokenizer
我想使用多个字符分隔符拆分字符串,但我也想存储分隔符.我的分隔符是()+-*/
所以,例如,如果我有一个字符串
26+78(12*23)-16
我想得到
26
+
78
(
12
*
23
)
-
16
Run Code Online (Sandbox Code Playgroud)
每行作为单独的数组元素.
我认为你不能使用split函数来实现这一点.但是,我使用string-tokenizer进行的试验也失败了.我怎样才能做到这一点?
如果不是星期六晚上,我不会回答:
String s1 = "26+78(12*23)-16";
for(String s: s1.split("(?<=[()+*/-])|(?=[()+*/-])")){
System.out.println(">> " + s);
}
Run Code Online (Sandbox Code Playgroud)
得到:
>> 26
>> +
>> 78
>> (
>> 12
>> *
>> 23
>> )
>> -
>> 16
Run Code Online (Sandbox Code Playgroud)