【发布时间】:2012-08-17 16:35:47
【问题描述】:
我正在尝试使用 javascript 正则表达式函数替换符号。我找不到替换单引号的方法。
我使用的代码是.replace(/([.?*&+^$[\]\\(){}|-])/g, "");
如何在其中添加单引号转义??
【问题讨论】:
标签: javascript regex
我正在尝试使用 javascript 正则表达式函数替换符号。我找不到替换单引号的方法。
我使用的代码是.replace(/([.?*&+^$[\]\\(){}|-])/g, "");
如何在其中添加单引号转义??
【问题讨论】:
标签: javascript regex
在括号表达式的开头添加':
.replace(/(['.?*&+^$[\]\\(){}|-])/g, "");
【讨论】:
只需在字符类末尾添加',它将被删除。由于破折号-,它会引发错误。它试图定义一个范围(你可以做[A-Z],但|-'当然没有意义)。所以你的最终正则表达式:.replace(/([.?*&+^$[\]\\(){}|\-'])/g, "");
Is 转义破折号,使其成为文字破折号而不是范围字符。
【讨论】:
我建议您通过转义要替换的任何字符来创建正确的正则表达式。这样您就可以轻松地将任何字符添加到此列表中。
这将给出简单的命令,例如:
.replace(/([\.\?\*\&\+\^\$\[\]\\\(\)\{\}\|\-\'])/g, "")
希望对你有帮助
【讨论】:
反转表达式可能更容易,并突出显示所有无效字符。
string.replace(/([^a-zA-Z0-9])/, '');
在字符映射的开头添加 ^ 会反转字符类。所以这将删除任何非字母数字字符。
【讨论】: