我从服务器获取正则表达式字符串。例如
js_pattern = "/^9\d+$/"
我需要从这个字符串中得到相同的正则表达式(没有任何修改)
js_regexp = /^9\d+$/
re = new RegExp(js_pattern)
对我不起作用,因为在那种情况下我得到 /\/^9d+$\//
在 JavaScript 中是否有将字符串转换为正则表达式的正确变体?
最佳答案
任何非特殊字符都被评估为字符串中的那个字符。
例如
// true, because it's non-special so it gets evaluated to that character.
console.log("\a" === "a"); // true
// false, because it's the new line special character.
console.log("\n" === "n"); // false
解决方法:
在发送之前转义服务器上的反斜杠。
关于javascript - 字符串转正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30232836/