我有一個正則表達式模式列表。Python的正則表達式,如何從字符串中刪除所有匹配
rgx_list = ['pattern_1', 'pattern_2', 'pattern_3']
,我使用循環功能通過列表,編譯正則表達式的,並應用findall
搶匹配的條款,然後我想刪除的方式表示從文本條款。
def clean_text(rgx_list, text):
matches = []
for r in rgx_list:
rgx = re.compile(r)
found_matches = re.findall(rgx, text)
matches.append(found_matches)
我想去做一些text.delete(matches)
,使所有的比賽會從文本中刪除,然後我可以返回潔淨文本。
有誰知道如何做到這一點?我目前的代碼只適用於每種模式的一個匹配,但文本可能有多於一個發生相同的模式,我想消除所有匹配。
你需要那些比賽嗎?第一件事情可能會比較簡單嗎?而且,模式的順序也很重要。你應該事先看到。 –