2010-02-02 2 views

Répondre

1

Je pense que celui-ci fonctionnera:

^([A-Za-z0-9._%+-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}(;|$))+

Répartition:

Assurez-vous d'utiliser une correspondance insensible à la casse. En outre, ce modèle n'autorise pas les espaces entre les e-mails ou au début ou à la fin de la chaîne.

+0

'(; $ | $)?' Peut être omis car la chaîne doit déjà se terminer par '(; | $)'. –

+0

Pourquoi l'hypothèse sur le nom de domaine de niveau supérieur jusqu'à 4 chr? – ziya

+0

cela ne fonctionne pas :(Je sais que cette question a une ambiance "gimmee da codez" mais je suis coincé ici –

1

La regex 'correcte' (alias RFC2822) est trop compliquée. Essayez quelque chose comme (\ S + @ [a-zA-Z0-9 -.] + (\ S *; \ s * | \ s * \ Z)) + Pas parfait mais devrait être là 90% (n'ont pas essayé il, donc il pourrait avoir besoin d'une certaine modification)

Note: Pas si sûr de \ Z il pourrait être une chose Perl seulement. Essayez $ aussi bien si cela ne fonctionne pas.

+0

Testé, fonctionne bien. BTW '\ Z' est supporté dans .NET. –