I would like to split a string using multiple character delimiters, but I also want to store delimiters. My delimiters are ()+-*/
So for example, if I had a string
26+78(12*23)-16
I want to get
26
+
78
(
12
*
23
)
-
16
each line as a separate array element.
I think you can not use split function to achieve this. However, my trial with string-tokenizer also failed. How can I achieve this?
I wouldn't answer if it wasn't saturday night here:
String s1 = "26+78(12*23)-16";
for(String s: s1.split("(?<=[()+*/-])|(?=[()+*/-])")){
System.out.println(">> " + s);
}
gives:
>> 26
>> +
>> 78
>> (
>> 12
>> *
>> 23
>> )
>> -
>> 16
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With