【问题标题】:Regexp negative check of word in group组中单词的正则表达式否定检查
【发布时间】:2018-01-29 13:03:46
【问题描述】:

我的模板在这里:

https://regex101.com/r/6z8X43/3

我的问题是第 7 场第二组:

([^\/\n]*)

this.text = 文本;

表示任何字符,除了 / 或“换行符”直到 .text

但我需要在这个否定检查中添加“this”字样,所以this.text 应该是无效的。 ([^\/\n|this]*) 之类的东西 - 不是 /,不是 \n,也不完全是“this”。

【问题讨论】:

  • 您可能不应该使用正则表达式来解析实际代码(您的编译器当然不会......它使用正式的解析器)。
  • 使用另一个正则表达式并反转结果。
  • Tim Biegeleisen,我在 Intellij Idea 工作。它可以使用正则表达式应用重构。现在它工作得很好,除了“这个”案例。
  • iBug,你能举个例子吗?
  • 试试这样的((?!this)[^\/\n])*regex101.com/r/6z8X43/4

标签: regex regex-negation regex-lookarounds regex-group regex-greedy


【解决方案1】:

你可以使用

^([ \f\t]*)((?:(?!this)[^\/\n])*)\.text\s*=[ \f\t]*([^$;\n=]+)
#                ^^^^^

your modified demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    • 1970-01-01
    • 1970-01-01
    • 2020-02-19
    • 2020-04-20
    • 1970-01-01
    相关资源
    最近更新 更多