我是一个Python的正则表达式新手,所以我承担......全球取代负向预测?
我有一个长期的,多行字符串,在我所取代[[...]]与其他字符串的目录部分东西,但只有他们不以'file://'开头,例如
s= 'chk1 [[file:///excursions/digital/MindMaps/|mm]],
local file [[file:///inFolder/tmptest/a/fan.txt|a/fan.txt]]
and nonlocal [[/excursions/books/calsync.txt|/excursions/books]]'
我用的这个变化(目前替换字符串只是一个我发现了什么检查):
re.sub('\[\[(?!file:)(^])*',"found:<\\1>",s)
但我得到一个“sre_constants.error:无与伦比组”。你知道我做错了什么吗?
谢谢!
亚历山德罗
它的工作原理,谢谢!我只是不确定在正则表达式中使用r有什么用处:它甚至在没有... – alessandro
@alessandro:不客气。 [Re documentation](http://docs.python.org/library/re.html)解释了为什么使用原始字符串更好。 – georg