java正则表达式中的引号

时间:2014-10-22 13:51:19

标签: java regex

我从JSP中获取一个String,其中包含[“,例如

["Bulgaria 

我想替换['的所有[“事件,但我不知道该怎么做...

我刚试过:

str = str.replaceAll("[\\\"", "['");

结果

java.util.regex.PatternSyntaxException: Unclosed character class near index 2 [\"

html = html.replaceAll("[\"", "['");

结果

java.util.regex.PatternSyntaxException: Unclosed character class near index 1 [" ^

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:1)

试试这个:

str.replaceAll("\\[\"", "['");

在java正则表达式中需要\\转义,而[是java正则表达式中的特殊字符,因此前面是\\"是字符串中的特殊字符,因此您只需要一个\来逃避它。

答案 1 :(得分:0)

"Test[\"".replaceAll("\\[\"", "['"); // Test['