javascript - JS 正则表达式匹配特殊字符

标签 javascript regex

我正在尝试查找此字符串的 JavaScript 正则表达式:![]()。但它需要完全匹配,所以:

`!()[]`      // No match
hello!()[]   // No match
!()[]hello   // No Match
!()[]        // Match
 !()[]       // Match (with a whitespace before and/or after)

我尝试了这个:\b![]()\b。它适用于单词,例如 \bhello\b,但不适用于这些字符。

最佳答案

指定的字符是控制字符,如果要匹配空格,也需要对用户\s 进行转义。尝试以下方法

\s?!(?:\[\]\(\)|\(\)\[\])\s?

编辑:添加了一个捕获组来提取 ![]()(如果需要)

EDIT2:我错过了您想要独立于 []() 的顺序,我已将其添加到这个 fiddle 中 http://jsfiddle.net/MfFAd/3/

关于javascript - JS 正则表达式匹配特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20669132/

相关文章:

javascript - 使用 Meteor.settings 功能

javascript - 现在可以在没有 .NET 4.5 主机的情况下使用 Web 套接字吗?

javascript - 如何将日期数组传递给 react-dates 组件?

R 中仅适用于第 n 个单词的正则表达式

c# - 正则表达式提取可变部分

javascript - 修改txt doc里面的 "string"值

python - 正则表达式Python单步,匹配包含两个以上分隔数字的仅文本括号

javascript - 具有多个值的键/值对

javascript - 使用向上和向下箭头进行自动完成搜索

android - EditText 限制输入特殊字符 : single quote, 双引号和表情符号