javascript - 正则表达式捕获引号后跟非标点字符

标签 javascript regex

我有以下正则表达式来匹配左引号:

/'(?=\b)/g

但后来我意识到它还捕获诸如 don'tit's 之类的内容。

所以我添加了另一条规则:

/'(?=\b[^a-zA-Z])/g

捕获左引号,后面不跟字母(在本例中为 ts)。但现在没有任何引号被突出显示。

我是否以错误的方式修改了正则表达式?

编辑:

哦,我意识到我的愚蠢错误了。无论如何,这就是我想做的:

"two 'three'"

"four don't it's "

我想匹配 two 中的开头 ',但不匹配 don 中的 '

最佳答案

您可以尝试使用此正则表达式来匹配引号,但跳过诸如 don't it's 等情况:

/(?:^|[^a-zA-Z])'|'(?![a-zA-Z])/gm

RegEx Demo

关于javascript - 正则表达式捕获引号后跟非标点字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28881033/

相关文章:

javascript - 浏览器如何管理样式加载顺序优先级?

javascript - 如何在 react 中使用 howler.js?

javascript - 如何在 ExtReact 中显示菜单时停止圆圈单击按钮;

javascript 验证电话

php - Preg_match 差异?

regex - 将所有正则表达式匹配捕获到一个向量中

javascript - 函数范围javascript之间的变量差异

javascript - jQuery - 打印和预览特定的 div

java - 替换 xml 字符串中的所有正则表达式

与 Java 不同,Javascript 正则表达式接受不应该接受的输入