我有一个很大的字符串,有很多这样的事件:
List<String>
我需要将该字符串转换为匹配
List\<String\>
我假设我会使用Java replaceAll(“”,“”)方法,但我不能让它工作,因为我不熟悉正则表达式。
任何帮助将不胜感激
答案 0 :(得分:2)
您需要四个反斜杠字符,例如:
String input = "List<String>";
input = input.replaceAll("<", "\\\\<").replaceAll(">", "\\\\>");
"\\\\<"
是用于指定\\<
。
但为什么在替换字符串中需要2 \
?由于替换字符串本身也具有转义语法(以转义$
,用于指定捕获组中的内容)。 \<
(或字符串文字"\\<"
)被替换方法解释为<
。所以我们需要在替换字符串级别转义\
字符。