Je souhaite valider une chaîne qui peut être un courriel ou plusieurs courriels séparés par des virgules.Valider plusieurs courriels séparés par des virgules avec javascript
Par exemple:
[email protected] -> TRUE
facture -> FAUX
bill.gates @ microsoft.com, steve.jobs @ apple.com » -> TRUE
bill.gates @ microsoft.com, steve.jobs @ apple.com, bob "-> false bob
, bill.gates @ microsoft.com, steve.jobs @ apple.com" -> false
je suis avec le code suivant qui fonctionne avec les cas de test
function validateEmail(field) {
var regex=/\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b/i;
return (regex.test(field)) ? true : false;
}
function validateMultipleEmailsCommaSeparated(value) {
var result = value.split(",");
for(var i = 0;i < result.length;i++)
if(!validateEmail(result[i]))
return false;
return true;
}
Est-ce le moyen le plus rapide de le faire? Et si je veux autoriser? et, en tant que séparateur?
Suggestion d'édition: "... vous devriez vérifier sur le côté client si l'adresse contient ** un et un seul ** @ ..." (cependant, je présume que "@" n'est pas autorisé dans le local -part ??) – Kristen
@Kristen: '@' est autorisé dans les chaînes entre guillemets, mais seulement là; Je n'ai jamais vu des chaînes de guillemets utilisées, bien qu'elles puissent fournir un moyen facile de confondre les bots de spam; il faut également garder à l'esprit que les caractères suivants sont valables même sans citer:! # $% & '* + -/=?^_ '{|} ~ – Christoph
btw, je pense que j'ai lu une fois qu'il y avait même des gens qui utilisent le courrier -adresse avec un domaine ccTLD brut après le '@'; Je ne me souviens pas quel pays, cependant ... – Christoph