[英]How to split string by '+' Except inside square brackets
我的示例字符串: a+[b*a+c]+c+[ab+c]
并被 '+' 分割
拆分后:
a
[b*a+c]
c
[ab+c]
我可以通过使用\\\\+(?![^()]*\\\\))
作为正则表达式到input.split(regex)
来为括号做这件事。 但无法弄清楚方括号。 我感谢任何形式的帮助
需要负前瞻来匹配+
除了放在右括号\\]
之前的那些
String str = "a+[b*a+c]+c+[ab+c]";
String[] arr = str.split("\\+(?![^\\[]*\\])");
Arrays.stream(arr)
.forEach(System.out::println);
输出
a
[b*a+c]
c
[ab+c]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.