Fonction regex multiples validation formulaire

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 463 fois - Téléchargée 18 fois

Contenu du snippet

En attendant le déploiement du HTML 5, voici une petite fonction regex qui stocke les expressions régulières les plus courantes et donc permet de valider une bonne partie des champs connus dans les formulaires !

Source / Exemple :


function regex(Variable) {
	switch (Variable) {
		case "texte"   : reg = new RegExp("^(.|\n|\r|\n\r){3,}$","i"); break; // texte de 3 caractères minimum, retour à la ligne possible  
		case "mail"    : reg = new RegExp("^([a-zA-Z0-9_-])+([.]?[a-zA-Z0-9_-]{1,})*@([a-zA-Z0-9-_]{2,}[.])+[a-zA-Z]{2,3}\\s*$","i"); break; // adresse mail valide customer@fai.ext  
		case "mdp"     : reg = new RegExp("^.{5,32}$","i"); break; // mot de passe entre 5 et 32 caractères  
		case "date"    : reg = new RegExp("^[0-9]{2}/[0-9]{2}/[0-9]{4}$","i") ; break; // date au format 01/01/2000  
		case "ip"      : reg = new RegExp("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$","i"); break; // adresse IPV4  
		case "tel"     : reg = new RegExp("^0[1-9]([-. ]?[0-9]{2}){4}$","i"); break; // numéro de téléphone français  
		case "cp"      : reg = new RegExp("^[0-9]{5}$","i"); break; // code postal  
		case "fichier" : reg = new RegExp("^.+\.[a-zA-Z]{2,5}$","i"); break; // fichiers à uploader  
		// Ajoutez ici vos expressions  
	}
	return reg;
};

Conclusion :


Cas d'utilisation :

var input = window.prompt("Saisissez le nouveau nom :", "dossier/image.jpg");
var fileOK = regex("fichier");

if(!fileOK.test(input))
alert("votre saisie est incorrecte !");

A voir également

Ajouter un commentaire Commentaires
faridh1077 Messages postés 3 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 3 janvier 2012
5 févr. 2011 à 01:35
très bonne continuation
faridh1077 Messages postés 3 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 3 janvier 2012
5 févr. 2011 à 01:32
tres bonne contiuation
tefa24600 Messages postés 30 Date d'inscription samedi 4 août 2007 Statut Membre Dernière intervention 21 février 2012
31 janv. 2011 à 16:42
j'ai vu d'ailleurs qu'il existe des sites tels que http://www.regexlib.com/, spécialisés dans les expressions régumières, mais je n'ai pas encore vu de fonction universelle pour valider le format d'un fichier
cs_nino31 Messages postés 17 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 29 avril 2013
31 janv. 2011 à 16:21
En tout cas, vu la complexité des regex l'initiative de créer une classe "Regex" est très bonne...
tefa24600 Messages postés 30 Date d'inscription samedi 4 août 2007 Statut Membre Dernière intervention 21 février 2012
31 janv. 2011 à 12:12
C'est vrai que d'allonger la limite encore un peu plus n'est pas très intelligent, mais je voulais que ma source soit la plus "portable" possible, qu'elle puisse se généraliser et éviter aux utilisateurs de s'arracher les cheveux avec ces saletés de regexp !

Dans un autre sens, si je propose une source qui ne remplit pas totalement son rôle, elle ne sert à rien.

Je te remercie pour ces critiques et je vais faire en sorte de pallier à ces problèmes !
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.