正则表达式模块与pypy

6
有没有办法在pypy中使用这个正则表达式模块?

https://pypi.python.org/pypi/regex

或者任何其他与pypy兼容且具有此正则表达式模块功能的替代正则表达式模块。我已经从我的Python安装中复制了regex模块文件到pypy的lib_pypy文件夹中,但我无法导入该模块,错误如下:

ImportError: No module named _regex

似乎它无法导入_regex.pyd文件。我正在使用pypy3-2.1-beta1-win32,Windows XP。
我还尝试使用pypy构建库:
pypy setup.py build -c mingw32

而且我遇到了这个错误:

error: package directory 'Python3' does not exist

我尝试在setup.py中删除package_dir={'': PKG_BASE},然后重新构建,结果出现了另一个错误:

File "...\pypy3-2.1-beta1-win32\lib-python\3\distutils\cygwinccompiler.py", line 352, in check_config_h
    fn = sysconfig.get_config_h_filename()
AttributeError: 'module' object has no attribute 'get_config_h_filename'
1个回答

2

我担心这个库需要进行适应以与PyPy一起工作——PyPy不支持CPython支持的相同的C扩展机制。此外,截至目前,我不确定Python 3是否已经准备好或可用于PyPy:根据他们网站主页右侧的信息,他们仍在为py3k PyPy子项目筹集捐款:http://pypy.org

关于C扩展问题,如果您有时间和意愿,可以尝试将该库移植到使用PyPy的CFFI模块(import cffi)来调用regex的C部分。幸运的是,根据http://doc.pypy.org/en/latest/release-2.0.0-beta2.html,CFFI现在内置于PyPy中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接