javascript - 匹配 "After"如果它后面没有一个 -ing 词

标签 javascript regex

如果 After 之后(逗号之前)没有 -ing 词,我想匹配它。所以 After 和逗号之间不应该有 -ing 词。

所需的匹配项(粗体):

After sitting down, he began to talk.

After finally sitting down, he began to talk.

After he sat down, he began to talk.

我认为这个正则表达式可以做到这一点:

\bAfter\b.*(?!\w+ing)+,

但如果后面没有 -ing 单词,它也会匹配 After:

After sitting down, he began to talk.

After finally sitting down, he began to talk.

After he sat down, he began to talk.

https://regexr.com/683bv

这是为什么以及如何解决?

最佳答案

试试这个正则表达式

仅匹配 After 中的句子和一个逗号,在 wo 之后没有带有 -ing 的单词

只是 .+ 的惰性量词(而不是正则表达式中的 \w+)就可以了

\bAfter (?!.+?ing).*?,

(在第二个 .* 之后还有一个惰性量词,以防同一个句子中有 2 个逗号)

输出:

img

Regex101 Demo

告诉我它是否不适合你...

关于javascript - 匹配 "After"如果它后面没有一个 -ing 词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69685503/

相关文章:

javascript - 隐藏输入字段的内联 Javascript 无法正常工作

javascript - 如何从NodeJS获取单个数据并在VueJS中显示?

javascript - 正则表达式检测 NSString 以进行语法突出显示

javascript - jquery 获取数据标签并用它做一些事情

javascript - 用 Mongoose 存储时间的数据类型

regex - 如何在 Sublime Text 2 文档中找到所有带单引号的属性并替换为双引号?

html - 用于 HTML 标签之间文本的 Sublime Text RegEx 模式

javascript - 正则表达式不会在应该失败的时候失败

regex - Perl 正则表达式 : meaning of "??"

javascript - redux 文档中的这个示例如何工作?