我試圖使用正則表達式與模式
匹配以下字符串中的圖案重複的正則表達式字符串:
These are my variables -abc $def -geh $ijk for case1
These are my variables -lmn $opq -rst $uvw for case2
模式:
These\s+are\s+my\s+variables(?:\s*-(\w+)\s+\$(\w+))*\s+for\s+(case\d)
我能成功匹配上面的字符串與我的模式,但問題是,我無法按照我的意圖趕上小組。我嘗試給我的結果如下
geh, ijk, case1
rst, uvw, case2
我想要的羣體輸出如下
abc, def, geh, ijk, case1
lmn, opq, rst, uvw, case2
如何爲這個問題進場?
不要爲第一組使用'?:',因爲這是不匹配的組。 –
使用PyPi正則表達式並使用相同的模式 - 您將獲得'.captures(1)'和'.captures(2)'中的變量。 –
重複捕獲組時,只有最後一次迭代存儲在結果匹配中。如果它總是四次,請展開您的模式 - 否則您需要兩步解決方案。 –