我想在我的 Cython 代码中使用 regex.h 库,因为内置的 re 模块似乎很慢,但我在做这件事时遇到了很多麻烦。我知道我必须创建一个 .pxd 文件并将其用作我的代码中的外部模块,但我真的是 Python/Cython 的新手。
这是我的 regex.pxd 文件:
cdef extern from *:
ctypedef char const_char "const char"
cdef extern from "regex.h" nogil:
int regcomp(regex_t* PREG, const char* REGEX, int CFLAGS)
int regexec(const regex_t *PREG, const char *STRING, size_t NMATCH, regmatch_t PMATCH[], int EFLAGS)
我正在运行命令:$python setup.py build_ext --inplace
做完之后我收到了这个错误:
regex.pxd:6:27: Expected ')', found '*'
您对如何在代码中使用该regex.h
库有任何其他想法吗?Cython