2017-06-26 1 views
0

I Vous souhaitez implémenter la validation de plusieurs e-mails avec un domaine spécifique utilisant une regex séparée par ;. L'exigence est de n'autoriser que deux adresses électroniques séparées par un point-virgule. J'ai essayé regexRegex Validation de plusieurs e-mails

^([\w+-.%][email protected]+\.com[~]?){1,2}$

il fonctionne très bien, mais il valide suivi par email ;. Il devrait fonctionner comme ci-dessous

1) [email protected] valide

2) [email protected];[email protected] valide

3) [email protected]; invalide

4) [email protected];[email protected]; invalide

Comment le faire en utilisant regex?

+0

Essayez '^ [\ w +% -.] + @ Domain \ .com (:;?. [\ W +% -] + @ domaine \ .com)? $ ' –

+0

Parfait. Il fonctionne comme prévu. Merci beaucoup Wiktor – Ankit

+0

Cependant, vous n'avez pas indiqué l'environnement. Probablement, vous devez déclarer l'expression rationnelle d'une manière spécifique. –

Répondre

0

Essayer:

"^([\w+.%-][email protected]\.com)(;([\w+.%-][email protected]\.com))?$" 

Il se compose d'addres 1

([\w+.%-][email protected]\.com)

et zéro ou une Addres autres

(;([\w+.%-][email protected]\.com))?

"^...$" fait en sorte qu'il n'y ait pas d'autres caractères autour.

Groupe 1 et Groupe 3 contiendra les adresses

Test here

+0

Votre regex permet ['ab ,,,,,, [email protected]; ab ,,,, c1 @ domain.com'] (https://regex101.com/r/D7P5TC/2). Pas sûr que ce soit prévu. –

+0

Merci! Vous avez raison les '-'' '' '' '' '' '' '' '' '' '' '[...]' – RoJaIt

+1

Oui, juste ce que je suggère. En fait, vous pouvez aussi mettre le trait d'union au début de la classe de caractères. –