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

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

最佳答案

有两件事:


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


以下将起作用:

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


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

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

var regex = /\W/g;


推荐阅读:


Regular Expressions (MDC)

08-28 06:47
查看更多