java正则表达式,用于删除方括号中除字符和数字以外的所有内容
我曾经
value.replaceAll("[^\\w](?=[^\\[]*\\])", "");
在以下情况下,它可以正常工作
[a+b+c1 &$&$/]+(1+b&+c&)
产生:
[abc1]+(1+b&+c&)
但对于以下字符串,它只在第一次运行时删除方括号内的方括号
[a+b+c1 &$&$/[]]+(1+b&+c&)
产生:
[a+b+c1 &$&$/]+(1+b&+c&)
你可以在下面搜索框中键入要查询的问题!
我曾经
value.replaceAll("[^\\w](?=[^\\[]*\\])", "");
在以下情况下,它可以正常工作
[a+b+c1 &$&$/]+(1+b&+c&)
产生:
[abc1]+(1+b&+c&)
但对于以下字符串,它只在第一次运行时删除方括号内的方括号
[a+b+c1 &$&$/[]]+(1+b&+c&)
产生:
[a+b+c1 &$&$/]+(1+b&+c&)
# 1 楼答案
将我的评论翻译成答案
您可以使用以下简单的Java解析来替换: