我有以下文字:檢索內部#{}文字
#{king} for a ##{day}, ##{fool} for a #{lifetime}
而下面的(碎)的正則表達式:
[^#]#{[a-z]+}
我想匹配所有#{字}而不是# #{words}(加倍'#'就像轉義一樣)。
今天我注意到,我有的正則表達式忽略了第一個單詞(拒絕匹配#{king},但正確地忽略了## {day}和## {fool})。
>>> regex = re.compile("[^#]#{[a-z]+}")
>>> regex.findall(string)
[u' #{lifetime}']
有關如何改進當前正則表達式以適應我的需求的任何建議? 我想這個問題是[^#]
...
你的解決方案更好,我忘記了負面的後顧之憂。 – grep
很酷的功能?這是蟒蛇正則表達式具體? –
@Andrei,不,它似乎不是python特有的(根據[this site](http://www.regular-expressions.info/lookaround.html)),但他們說:「像JavaScript,Ruby和Tcl這樣的風格可以做盡管它們確實支持lookahead,但根本不支持lookbehind。「 – MatToufoutu