1
我正在修改正則表達式以提取一組組匹配的字符串,但此「超級組」未按預期返回組合匹配的字符串。使用lookaheads進行正則表達式分組(使用Python)
匹配的字符串的形式爲:
/DIR/SOMESTRING-W0.12+345.raw.gz
,我使用正則表達式:
/DIR/
(?P<super>
(?P<name>.*?)
(?=(?P<modifier>-W\d\.\d{2}[+-]\d{3})?\.(?P<extension>raw\.gz|root)$)
)
我得到了命名組的結果如下:
modifier: '-W0.12+345'
super: 'SOMESTRING'
name: 'SOMESTRING'
extension: 'raw.gz'
雖然我期待
super: 'SOMESTRING-W0.12+345.raw.gz'
分組的分組一直對我有用,但現在還沒有,我不明白爲什麼。
希望有人能給我一些提示。
注意:這個表達式的解釋可在(matching a specific substring with regular expressions using awk)
找到
哇,這麼簡單的作爲!我的印象是,這種前瞻是絕對必要的。謝謝! – RogerFC 2013-04-09 08:05:26