我需要在一组中所有出现的字符前加一个反弹,比如'"\在给定的字符串中.
例如,给定字符串
He said "I don't know."
Run Code Online (Sandbox Code Playgroud)
它应该被替换为
He said \"I don\'t know.\"
Run Code Online (Sandbox Code Playgroud)
我如何用Java做到这一点?
试试这个正则表达式:
["'\\]
Run Code Online (Sandbox Code Playgroud)
为了在Java字符串文字中使用它,需要对双引号和两个反斜杠进行转义.
替换字符串应该是这样的:
\\$0
Run Code Online (Sandbox Code Playgroud)
这$0是对比赛的参考.需要转义反斜杠,否则$变为字面值.同样,反斜杠需要在Java字符串文字中进行转义.生成的代码如下所示:
s = s.replaceAll("[\"'\\\\]", "\\\\$0");
Run Code Online (Sandbox Code Playgroud)
在线查看:ideone
| 归档时间: |
|
| 查看次数: |
846 次 |
| 最近记录: |