folgendes Problem:
Ich verwende zur Zeit ein kleines Bash-Script, dass aus dem EMail-Quelltext den ersten Teil vor dem '@' der EMail-Adresse auswertet:
Code: Select all
STRING=`grep -i "^To: " ${MESSAGE_FILE} | sed -e "s/^.....//" | cut -d "@" -f 1`
To: <user@domain.com>
Dummerweise gibt es jedoch auch Mail-Clients, die wie folgt codieren (also ohne eckige Klammer) - damit fängt der String schon beim 4. Zeichen an:
Damit wird von meinem grep / sed /cut dummerweise das erste Zeichen abgeschnitten. Bei obigem Beispiel ist der String somit 'ser' statt 'user'.To: user@domain.com
Frage:
Fällt jemanden eine Möglichkeit ein, ein korrektes Ergebnis bei beiden Codierungen zu erzielen ?!?
Ich dachte an eine Regular Expression, die ab dem ersten gültigen Zeichen, dass in einer EMail vorkommen darf, bis zum '@'-Symbol extrahiert - hat jedoch irgendwie nicht funktioniert.
Danke für Eure Hilfe !
Grüsse
Christoph