【问题标题】:How do I match a specific order of letters with python 2.x RE如何将特定的字母顺序与 python 2.x RE 匹配
【发布时间】:2017-05-22 06:03:23
【问题描述】:

我想用 Python 的 Re 模块匹配特定的字母顺序。例如,我怎么能匹配像

  • 鲍勃
  • 阿拉
  • 堵嘴

但不是

  • aaa
  • 巴尔

ie:我想要一个字母,然后是另一个,然后又是第一个。

对于两个不同的字母,我可以遍历所有 650 种可能性。然而,当匹配更大的字符串时,这是不可能的(而且也不是很好)。

【问题讨论】:

    标签: python regex string match


    【解决方案1】:

    使用这个正则表达式([a-zA-Z])(?!\1)[a-zA-Z]\1

    【讨论】:

      【解决方案2】:

      您可以将此正则表达式与捕获组、前瞻和反向引用一起使用:

      ^([a-zA-Z])(?!\1)[a-zA-Z]\1$
      

      RegEx Demo

      ^                # line start
      ([a-zA-Z])       # match any letter and capture it as group #1
      (?!\1)[a-zA-Z]   # match any letter but make sure it is not what have in group #1
      \1               # match what we captured in capture group #1
      $                # line end
      

      【讨论】:

        猜你喜欢
        • 2012-02-13
        • 1970-01-01
        • 2014-11-05
        • 2010-12-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多