我從網頁中提取了一個長字符串。使用:有兩種可能性的子字符串正則表達式
x=re.findall(r"(?:l'article)\s\d+\w+.*;", xpath)
它提取以下2個字符串:
l'article 1382 du code civil ;
l'article 700 du code de procédure civile, les condamne à payer à la société Financière du cèdre la somme globale de 3 000 euros et rejette leurs demandes ;
然而,後者是有點長。我所需要的就是'''。有沒有辦法直接做到這一點?所以我的原始正則表達式命令查找';'或','的基礎上,它遇到的第一個。
如果不是,我可以將正則表達式應用於列表,還是我需要爲此編寫一個循環?
所需取得的成果與列表:
l'article 1382 du code civil
l'article 700 du code de procédure civile
注意,我有這個適用於許多頁面,並可能有更多的這些在一個頁面中。手動或通過在列表中明確指定條目來做任何事情都是不可能的。
爲什麼不'[;,]'?使用're.findall'時,您的代碼將只在您創建捕獲組時纔會返回';'或','。 –
@SebastianProske更新了代碼,感謝您的輸入。 – Neil
謝謝。我原本以爲這是你以前提供的?(; |,)答案。但是這提供了一個列表;和,。 (對不起,我沒有提供自己的嘗試來解決這個問題)。謝謝你解釋爲什麼發生這種情況@SebastianProske。 – Peter