V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
pc10201
V2EX  ›  Python

为什么用不了强大的re2库?

  •  
  •   pc10201 · 2014-01-04 16:35:54 +08:00 · 7238 次点击
    这是一个创建于 3770 天前的主题,其中的信息可能已经有所发展或是发生改变。
    re2号称是性能很快的正则表达式库,测试中速度比自带的快10倍甚至更多

    介绍链接
    https://code.google.com/p/re2/
    python版的实现
    https://pypi.python.org/pypi/re2/
    我用pip安装不成功
    然后我去下载了
    http://www.lfd.uci.edu/~gohlke/pythonlibs/#re2
    二进制包,安装成功了,import也没有报错

    #coding=utf-8
    import re2
    print re2.search("(\d{3})\D?(\d{3})\D?(\d{4})", "800-555-1212").groups()
    结果
    D:\Python27\python.exe S:/12.py
    Traceback (most recent call last):
    File "S:/12.py", line 4, in <module>
    print re2.search("(\d{3})\D?(\d{3})\D?(\d{4})", "800-555-1212").groups()
    AttributeError: 'NoneType' object has no attribute 'groups'

    难道这个不支持windows么?
    4 条回复    1970-01-01 08:00:00 +08:00
    lsj5031
        1
    lsj5031  
       2014-01-04 17:15:38 +08:00
    呃,看了一眼感觉错误信息是说前面的匹配没有结果啊,所以没法group。
    建议检查下正则或者库的使用……
    ushuz
        2
    ushuz  
       2014-01-04 17:18:17 +08:00
    恐怕是库使用上的问题吧,windows下标准库re可以匹配到。
    pc10201
        3
    pc10201  
    OP
       2014-01-04 17:28:06 +08:00
    @lsj5031 代码是取自官方的demo
    https://github.com/axiak/pyre2/blob/master/tests/search.txt
    我这都无法运行成功
    1138825823
        4
    1138825823  
       2014-04-06 12:44:01 +08:00
    这个库的0.2.20版本在pypi和http://www.lfd.uci.edu/~gohlke/pythonlibs/#re2上均存在BUG,可以参见https://github.com/axiak/pyre2/issues/11和https://github.com/axiak/pyre2/issues/14。
    所以如果想正确使用的话应该自己去github上下载,然后python setup.py install。安装之前需要编译一下原始的re2包,https://code.google.com/p/re2win/有windows版本下载。之后进行python setup.py install时可能会出现一些小问题,需要修改setup.py的内容,具体可以给我邮件,[email protected]
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2193 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 15:50 · PVG 23:50 · LAX 08:50 · JFK 11:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.