javascript - 转义 Javascript 字符串,未终止的字符类错误

标签 javascript regex escaping

我不断收到以下错误

Uncaught SyntaxError: Invalid regular expression: /$_POST['/: Unterminated character class 

我搜索了几个线程,它们都指出了我没有正确转义字符串这一事实。 我将一个 php 文件作为 string 加载到 javascript var 中,然后我在其中搜索以下内容,但我尝试转义但没有成功。

根据 List of all characters that should be escaped before put in to RegEx?

我相信这些都是需要转义的字符。

. \ + * ? [ ^ ] $ ( ) { } = ! < > | : -

这是让我失望的代码片段。 (这是干净的代码,一切都需要转义)

var n = data.search("$_POST['");
n = res.search("'];");
n = data.search("//hurdle{"); 
n = res.search("}");

如果有人能告诉我如何正确地做到这一点,我将不胜感激。谢谢

最佳答案

您需要转义美元和括号:\$\[\]

例如:

arrayOfMatches = yourString.match(/\$_POST\['/g);

关于javascript - 转义 Javascript 字符串,未终止的字符类错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25007483/

相关文章:

javascript - 从快速排序中删除递归

javascript - 将不同的事件监听器添加到循环中的一组元素

regex - perl 正则表达式,删除捕获的内容

php - 正则表达式忽略括号中的分隔符

java - 如何将转义字符写入字符串?

javascript - 像电影一样滚动时的页面动画

javascript - React setState() 不适用于单选字段 handleInput 方法

c# - 负向查找后面带有未知数量的空格

Python - 打印直到标记(a la PHP)?

java - ${(stringToMatch)} 的正则表达式