简单的Javascript正则表达式问题

时间:2010-06-09 07:15:24

标签: javascript regex

为什么不将prepClass分配给带下划线的字符串selectorClass而不是非alpha字符?我需要将其更改为什么?

var regex = new RegExp("/W/", "g");
var prepClass = selectorClass.replace(regex, "_");

1 个答案:

答案 0 :(得分:4)

有几件事:

  • 如果您使用RegExp构造函数,则不需要斜杠,您可能会将其与RegExp文字的语法混淆。
  • 您希望匹配\W字符类。

以下内容可行:

var regex = new RegExp("\\W", "g");

RegExp构造函数接受包含该模式的字符串,请注意您应该双重转义斜杠,以获得单斜杠和W("\W")在字符串中。

或者你可以简单地使用文字符号:

var regex = /\W/g;

推荐阅读: