Ich habe eine E-Mail-Protokolldatei, die wie folgt lautet:Aufnahme wiederholt Gruppen in Python Regex
Aug 15 00:01:06 **** sm-mta*** to=<[email protected]>,<[email protected]>,[email protected], some_more_stuff
Aug 16 13:16:09 **** sendmail*** to=<[email protected]>, some_more_stuff
Aug 17 11:14:48 **** sm-mta*** to=<[email protected]>,<[email protected]>, some_more_stuff
Was ich will, ist eine Liste aller Mail-Hosts in Zeilen, die „sm-mta“ enthalten. In diesem Fall wäre das: ['gmail.com', 'yahoo.com', 'aol.com', 'gmail.com', gmail.com']
re.findall(r'sm-mta.*[email protected](.*?)[>, ]')
nur erste Host jeder passende Zeile zurück (['gmail.com','gmail.com']
)
re.findall(r'[email protected](.*?)[>, ]')
die korrekte Liste zurückkehren, aber ich brauche zu filtern. Gibt es eine Problemumgehung dafür?
können Sie versuchen, dieses https://eval.in/875159 –