Sto tentando di creare un'espressione per convalidare gli indirizzi Gmail. Questo è quello che ho fatto finora.Espressione regolare: convalida degli indirizzi Gmail
`^ ([\ w] [\ w.] (?!.) @ Gmail.com) Sto tentando di creare un'espressione per convalidare gli indirizzi Gmail. Questo è quello che ho fatto finora.
Ma non funziona come voglio.
Gmail indirizzo:
- primo e l'ultimo carattere deve essere [a-z0-9] solo
- Il contenuto nome utente [a-z0-9.]
- Non ci possono essere periodi consecutivi
(i.e: [email protected] [This is wrong])
- La lunghezza del nome utente deve essere compresa tra 6 e 30 lettere.
Essendo onesto, non ho molta esperienza con le espressioni regolari.
A proposito, c'è una documentazione per l'espressione regolare?
Inoltre, la parte prima del '@' deve essere almeno 6 caratteri alfanumerici ** (punti non inclusi!). –
Se questo è un incarico che * presuppone * determinati requisiti per gli indirizzi GMail, va bene - ma i requisiti che dichiari non sono quelli che GMail effettivamente applica. I doppi punti nel nome sono permessi (e ignorati), così come un suffisso che inizia con '+'. La parte del nome e il nome del dominio "gmail.com" non fanno distinzione tra maiuscole e minuscole, quindi sono consentite lettere maiuscole. Non conosco tutte le regole. Qual è il tuo vero obiettivo? (È difficile pensare a un'applicazione in cui si desideri convalidare indirizzi Gmail e * solo * indirizzi Gmail.) –
Per espandere la risposta di @KeithThompson. I requisiti per le espressioni regolari soddisfano le ** condizioni di registrazione ** per gli indirizzi Gmail. Stai trascurando il fatto che gmail ti permette di aggiungere un + alla fine del tuo nome utente, e quindi qualsiasi testo dopo di esso che desideri. Permette anche di aggiungere qualsiasi numero di punti (anche all'inizio/fine del nome utente). Accetta anche indirizzi con diverse lettere maiuscole. Le vostre cattive specifiche rendono inutile la regex nel mondo reale. Staresti meglio con una [regex ufficiale conforme] (http://stackoverflow.com/a/201378/1208914) – stormCloud