在python中重写正则表达式

时间:2014-09-18 09:14:23

标签: python regex python-2.6 regular-language

re.compile('(?<!\(\s*)SELECT.*?FROM')

我想在python 2.6中编译正则表达式,但编译时遇到错误。

python中的re模块将不支持* / + /?,其长度未确定,在正则表达式的后面。

有人评论建议我使用正则表达式,这是第三方模块。但是,我无法在公司服务器中使用第三方。

有人可以帮我重写正则表达式吗?

Target: "( SELECT blablabla" <- This could not be matched. 
"  SELECT blablabla" <- This could be matched, I mean no matter how many whitespace in front of the SELECT the string will always be matched. 

1 个答案:

答案 0 :(得分:1)

Python 2.x不支持可变长度的lookbehind,cou可以使用模块regex代替re或更改您的模式:

re.compile('(?<!\()\s*SELECT.*?FROM')