用于查找和替换的RegEx未在Android Studio IDE中转义撇号

时间:2017-02-22 19:48:32

标签: android regex android-studio

我正在尝试使用RegEx来查找并替换Android Studio中所有未转义的撇号。

到目前为止,我已经想出了这个:

[^ \] [']

这将选择一个撇号和它左边的字符,如果它不是反斜杠(即如果它没有被转义!)。

问题是,如果我有一个单词“d'effectuer”,它会将光标放在“d'”上,但我不想更换撇号左边的字母。它应该找到相同的单词,但选择应该只在撇号本身,所以我可以用“\”“替换它。这可以以某种方式完成吗?

注意:我也尝试在Notepad ++中执行此操作

&gt;'\ <&lt; ,然后替换为 \',但由于某种原因它无法正常工作。查找实际上工作正常,但当我点击替换按钮时,它不会替换任何东西...

3 个答案:

答案 0 :(得分:0)

尝试将要保留在括号内的子字符串括起来以形成捕获组:

([^\])[']

然后,您可以在进行替换时使用$1来引用它,例如将其替换为$1replacement,其中replacement是替换撇号的任何内容。

答案 1 :(得分:0)

Without RegEX- We can directly remove ' symbol.

String data ="d'effectuer";
String a=data.trim().replace("'","");

正则表达式[^ \ w]将匹配任何非字母数字或空格。所以你可以使用[^ \ w]代替替换撇号。

答案 2 :(得分:0)

我也遇到了同样的问题。我发现最简单的方法是

  1. 找到所有转义字符(\')并将其替换为未转义的版本(')-使您无法正确转义字符

  2. 找到那些未转义的字符('),并用转义的版本(\')替换它们-现在您可以一次转义所有字符

对于您不想花费大量时间进行的任务的简单解决方法