如何从python脚本中使用PCRE正则表达式?

时间:2013-06-05 12:37:53

标签: python regex pcre

我想使用Python脚本中的PCRE library或类似的东西。这些脚本将供个人使用,因此不太可移植,快速和简洁的代码是可以接受的。如何告诉python将字符串和正则表达式发送到pcre并返回结果?

1 个答案:

答案 0 :(得分:2)

Tor,发现这个老问题,因为它是一个很好的问题,并且仍然适合任何想要将项目从PHP移动到python的人。

我也是PCRE的忠实粉丝。在Python上,re非常有限,但好消息是有另一个名为regex的模块提供了PCRE的许多精彩功能,包括:

  1. Atomic Groups
  2. 占有量词
  3. 递归
  4. 分支重置
  5. 以及更多,包括PCRE不提供的几个,例如类减法,可变长度后视和模糊匹配。

    如果开发人员将该项目付诸实践,Python将突然配备一个出色的正则表达式引擎,这将使其对那些一直关注从PHP切换的正则表达式爱好者更具吸引力。

    仔细阅读说明,因为模块可以在两种模式下运行,一种模式与re兼容,另一种模式具有所有酷炫功能。您可以使用(?V0)(?V1)

    指定模式

    在Unix上,使用pip进行安装非常简单。在Windows上,我还没有设法让regex模块使用64位python。我卸载了我的64位安装2.7和3.3,重新安装了32位,并在两者上安装了regex模块。

    从这里开始的地方:

    1. download page for the regex module
    2. A thorough SO question about python regex modules