Blockieren von E-Mail-Adressen mit regulärem Ausdruck funktioniert nicht

Hallo zusammen,

die Blockierung von Beiträgen mit regulären Ausdrücken funktioniert nicht mehr. Das RegEx-Testtool erkennt zwar die E-Mail-Adresse, aber Nutzer können dennoch E-Mail-Adressen posten:

RegEx: (^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)

Ist das ein Fehler?

Vielen Dank für eure Hilfe!

Ich denke, es liegt ein Problem mit diesem regulären Ausdruck vor. Es scheint, dass er nur funktioniert, wenn die E-Mail-Adresse in der Composer-Zeile allein steht. Sie können dies bestätigen, indem Sie beim Testen des regulären Ausdrucks auf Discourse zusätzlichen Text neben der E-Mail-Adresse eingeben. Selbst ein einfaches Leerzeichen vor der E-Mail-Adresse führt zum Fehler.

Hier ist ein regulärer Ausdruck, der für E-Mail-Adressen funktionieren sollte:

\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b

Als Referenz habe ich diesen regulären Ausdruck hier gefunden: How to Find or Validate an Email Address.

Danke! Das funktioniert. Jetzt ein weiteres Problem: Ist es möglich, diese RegEx nur für öffentliche Beiträge zu verwenden? Momentan ist es nicht möglich, E-Mail-Adressen auch über private Nachrichten zu senden. Das ist ein unerwünschtes Verhalten.

Nein, es ist nicht möglich, überwachte Wörter ausschließlich auf öffentliche Beiträge anzuwenden. Mit diesem RegEx müssen Sie Ihre Benutzer dazu bringen, E-Mail-Adressen so einzugeben, dass sie nicht vom RegEx erfasst werden. Vielleicht könnte ein Leerzeichen vor dem @-Zeichen funktionieren.