Bonjour,
je veux un code regex (pour VB.Net) remplissant les conditions suivantes en même temps:
1- Le texte doit se composer d'au moins un mot et d'au plus six;
2- Chaque mot doit se composer d'au moins deux caractères alphabétiques minuscules
3- dans les mots composés de deux caractères je veux que ces caractères ne soient pas les mêmes (par exemple: "aa" est refusé)
4- Dans les mots composés de plus de deux caractères un caractère ne doit pas se répéter successivement plus de deux fois (par exemple: "abbb" est refusé mais "babb" est accepté)
Voici le code que j'ai entre les mains et qui fonctionne bien mais que je n'arrive pas à combiner pour satisfaire aux quatre conditions ci-dessus pour le même texte:
Pour satisfaire aux conditions 1 et 2, voici le code:
Pour satisfaire à la condition 3 voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part ^(([a-z]+[a-z])(\s[a-z]+[a-z])?(\s[a-z]+[a-z])?(\s[a-z]+[a-z])?(\s[a-z]+[a-z])?(\s[a-z]+[a-z])?)$
Pour satisfaire à la condition 4 voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part ^(?!([a-z])\1)[a-z][a-z]$
Mais je ne sais pas comment faire pour les combiner, svp aidez moi, ca fait des semaines que je travaille sur cela sans résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part ^(?=[a-z]{3,})(?:([a-z])(?!\1{2}))+$
Merci infiniment
Partager