【问题标题】:regex not to match continuous numbers正则表达式不匹配连续数字
【发布时间】:2013-01-22 09:53:31
【问题描述】:

我有以下正则表达式,它匹配 11:45 xyzzabcd 22 30 xyz 等数字,其中数字是时间实例。但它也匹配像 32 11 43 这样的数字实例。我该如何避免这样做?

(?<=\b)(\d{1,2}[\s:](\d{1,2}|o\'clock)[\s\.,]{0,1}(%s){0,1}?)(?=[\s\.,]|\Z)|(noon|midnight)(?=\b)

【问题讨论】:

    标签: python regex python-2.7 regex-negation


    【解决方案1】:

    你可以使用negativelookarounds,这将匹配一个不以数字开头或不以数字开头的数字字符串:

    (?<!\d)\s+\d+\s+(?!\d)
    

    【讨论】:

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