python 中括号匹配
abc=re.compile("\[0\]")这么写的为了匹配出"[0]"这个字符串,但是出现了以下错误Traceback(mostrecentcalllast):Fil...
abc=re.compile("\[0\]")
这么写的为了匹配出"[0]"这个字符串,但是出现了以下错误
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/untitled/xxxxxxxxxx.py", line 7, in <module>
searchObj = re.search( abc, line, re.M|re.I)
File "C:\Python27\lib\re.py", line 146, in search
return _compile(pattern, flags).search(string)
File "C:\Python27\lib\re.py", line 244, in _compile
raise ValueError('Cannot process flags argument with a compiled pattern')
ValueError: Cannot process flags argument with a compiled pattern
不加\又会被认为中括号内匹配带0的字符串,所以很郁闷,求前辈指点迷津 展开
这么写的为了匹配出"[0]"这个字符串,但是出现了以下错误
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/untitled/xxxxxxxxxx.py", line 7, in <module>
searchObj = re.search( abc, line, re.M|re.I)
File "C:\Python27\lib\re.py", line 146, in search
return _compile(pattern, flags).search(string)
File "C:\Python27\lib\re.py", line 244, in _compile
raise ValueError('Cannot process flags argument with a compiled pattern')
ValueError: Cannot process flags argument with a compiled pattern
不加\又会被认为中括号内匹配带0的字符串,所以很郁闷,求前辈指点迷津 展开
2个回答
展开全部
我这边试验没有任何问题。
>>> import re
>>> re.compile("\[0\]")
<_sre.SRE_Pattern object at 0x02C11320>
>>> abc=re.compile("\[0\]")
>>>
不过建议你换成这样子。
abc=re.compile("\\[0\\]")
两种方式,都可以匹配结果都对。
我怀疑是你的python版本的问题,你在python2.7.6以上版本再试一下。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询