该字符串的格式为:
(string).replaceAll("(^[)|(]$)","");
(string).replaceAll("(^\[)|(\]$)","");
用两个空格隔开任何东西。
我试过了:
{{1}}
但后者给我一个编译错误,第一个没有做任何事情。我基于以下方式实现了当前的解决方案:
Java Regex to remove start/end single quotes but leave inside quotes
环顾SO会产生很多问题,可以回答与我类似的问题但是实现他们的解决方案不起作用(他们要么什么也不做,否则会产生编译错误):
regex - match brackets but exclude them from results
Regular Expressions on Punctuation
我做错了什么?
答案 0 :(得分:1)
由于Java和regex都将\字符视为转义字符,因此在Java文字字符串中使用时实际上必须将它们加倍。 所以正则表达式:
(^\[)|(\]$)
实际上,Java字符串中的应该是:
"(^\\[)|(\\]$)"