一个正则问题
发布于 7 年前 作者 wtcsy 3859 次浏览 来自 问答

需要字符串转正则 用的new RegExp

var rule ="\d+"
var reg = new RegExp(rule)

这么转有问题 \ 这样的东西都会不见 这个各位是怎么解决的 rule是动态的正则表达式

11 回复

var rule ="\\d+"

js字符串中的“\”是一个转义字符,因此,使用显式构造函数创建RegExp实例对象时,应将原始正则表达式中的“\”用“\”替换

用“\”替换 为啥少了一个。

var rule ="\d+" rule是动态的

我也想把’\d’ 转成 ‘\d’ 怎转 没试成功

javascript里面字符串\被用来做转义,会结合后面的字符去判断是不是转义字符,显然\d不是转义字符,因此直接忽略掉了。说白了,字符串"\d"表达的不是两个字符,而是一个的意思

String.raw貌似可以呀

不过我传的字符串是 var a=“str” 我怎么把一个位置的字符串转成str这种形式了

回到顶部