【问题标题】:Regex: match condition [closed]正则表达式:匹配条件
【发布时间】:2013-01-03 15:37:07
【问题描述】:

我想在IF foo 中匹配foo,其中foo 是动态的并且可以具有任何格式,所以我需要匹配if 或IF 之后的所有内容。

我尝试了以下正则表达式:

((?!IF\s)|(?!if\s)).*

与 F foo 匹配,因此不是我真正想要的。

【问题讨论】:

  • 根据正则表达式标签:“请同时包含一个标签,指定您正在使用的编程语言或工具。”
  • 怎么了:-[Ii][Ff]\s(.*)?
  • 它匹配所有输入,而不是所有输入 except "IF "
  • @user1882902.. 我不明白你的评论。我发布的那个正则表达式将匹配表单中的所有输入 - If|IF|iF|if anything。
  • 是的,但我想在没有 IF 和中间没有空格的情况下匹配它。否则,如果我想将其与 IF 匹配,那么您显然是对的。

标签: c# regex c#-4.0


【解决方案1】:

您想要积极的前瞻,匹配IF,If,IF,iF 之后的所有内容,但不包括:

$ grep -Po "(?<=[Ii][Ff] ).*" <<< 'if match everything after'
match everything after

$ grep -Po "(?<=[Ii][Ff] ).*" <<< 'If match everything after'
match everything after

$ grep -Po "(?<=[Ii][Ff] ).*" <<< 'IF match everything after'
match everything after

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多