Ich versuche, einen Ausdruck zu erstellen, um Google Mail-Adressen zu überprüfen. Das habe ich bis jetzt gemacht.
'^ ([\ w] [\ w.] (?!.) @ gmail.com) Ich versuche einen Ausdruck zu erstellen, um Google Mail-Adressen zu überprüfen. Das habe ich bis jetzt gemacht.
Aber es funktioniert nicht wie ich will.
Google Mail-Adresse:
(i.e: [email protected] [This is wrong])
Ehrlich gesagt habe ich nicht viel Erfahrung mit den Regulären Ausdrücken.
Gibt es übrigens eine Dokumentation für Regular Expression?
Sie haben nicht angegeben, welche Regex-Implementierung Sie verwenden.
%Vor%[a-z0-9]
erstes Zeichen (\.?[a-z0-9]){5,}
mindestens fünf aufeinanderfolgende alphanumerische Zeichen, möglicherweise mit einem vorangestellten Punkt (siehe @ Daniels Kommentar, kopiert von @ Christopher's Antwort) g(oogle)?mail
gmail oder googlemail (siehe @ alrocs Antwort) Wahrscheinlich möchten Sie auch die Mustererkennung ohne Berücksichtigung der Groß- und Kleinschreibung verwenden. ( /.../i
in JavaScript.)
Einfacher regulärer Ausdruck für die Übereinstimmung von Google Mail:
%Vor% Entspricht, wenn am Anfang der Zeichenfolge \w
(alphanumerisch oder Unterstrich) oder .
oder +
oder -
mindestens einmal steht, gefolgt von @gmail.com
am Ende von die Zeichenfolge.
Sie können es in regexpal testen.
>Gibt es übrigens eine Dokumentation für Regular Expression?
Es gibt eine Menge Dokumentation für reguläre Ausdrücke, aber Sie müssen sicherstellen, dass Sie eine finden, die zu der besonderen Art von Regex passt, die Ihre Umgebung hat. Ja, es gibt zahlreiche Dialekte. Das heißt, "Mastering Regular Expressions" ist, soweit ich weiß, immer noch die ultimative Referenz.
Was Ihre spezifische Frage angeht, würde ich wahrscheinlich
verwenden %Vor%Vorbehalt: Ich habe nicht überprüft, ob die von Ihnen angegebenen Regeln korrekt sind. E-Mail-Adressen folgen ihnen im Allgemeinen sicher nicht.
RFC 2822 gibt an, was eine gültige E-Mail-Adresse ausmacht, und dies wird hier besprochen. Aber wie diese Seite feststellt, können Sie es nicht einfach akzeptieren, ohne es wirklich durchzulesen und zu verstehen, was es tut.
Sie sind hier im Vorteil, da Sie erwarten, dass die Adresse immer in @gmail.com
endet, was den Umfang Ihrer Regex reduziert (Sie können auf @
teilen und nur die erste Hälfte validieren).
Übrigens, GMail ist nicht gmail.com weltweit - in Großbritannien und Deutschland finden Sie auch googlemail.com
.
Es gibt viele Dokumentationen zu regulären Ausdrücken im Internet, aber Sie sollten sich darüber informieren, wie die von Ihnen verwendete Bibliothek / Engine die Dinge handhabt. Es gibt geringfügige Unterschiede zwischen den Implementierungen.
Meine Lösung dafür ist ^[a-zA-Z][-_.a-zA-Z0-9]{5,29}@g(oogle)?mail.com$
Bei der Beantwortung Ihrer anderen Frage:
Dies ist ein Link zur Regex-Dokumentation: Ссылка Es gibt mehr Hilfe für die spezifische Sprache, die Sie verwenden, indem Sie einfach "mylanguage regex" googlen.
Dies ist der reguläre Ausdruck für die E-Mail-Adressen, die alle E-Mail-Adressen validieren.
Aber Gmail erlaubt keine anderen Sonderzeichen, also wird der reguläre Ausdruck für die Gmail-E-Mail-Adresse einfacher sein als dieser und wird wie folgt angegeben:
%Vor%Tags und Links regex