我不确定为什么这个正则表达式不起作用,我想要实现的目标是给定文本“用户的桌面”,我需要将其转换为“用户的桌面”。
这是我的尝试:
String descrip = "user's desktop";
descrip = descrip.replaceAll("'", "\\'");
但是撇号没有被替换。我做错了什么?
最佳答案
您需要转义反斜杠两次:
String descrip = "user's desktop";
descrip = descrip.replaceAll("'", "\\\\'");
或者最好不要使用正则表达式:
descrip = descrip.replace("'", "\\'");
//=> user\'s desktop
关于Java 正则表达式转义撇号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30243367/