Regex tout sauf un groupe de caractères
Résolu
snipchain
Messages postés
7
Statut
Membre
-
snipchain Messages postés 7 Statut Membre -
snipchain Messages postés 7 Statut Membre -
Bonjour à tous! :)
J'essai de trouver une regex qui me renverrait un message d erreur si un groupe de caractères est utilisé de facon abusive (permission d'un seul de ces caractères à la fois)...
exemple de ce qui ne devrait pas passer: 'mon ch$$$at joue' ou 'mon $$$chat joue' ou 'mon chat$$$ joue' ou 'mon ch§at joue' ou 'mon chat§ joue' ou 'mon §chat joue'
exemple de ce qui pourrait passer: 'mon ch$at joue' ou 'mon $chat joue' ou 'mon chat$ joue' ou 'mon ch&at joue' ou 'mon chat& joue' ou 'mon &chat joue'
j'ai tenté un
if (!preg_match('#.*[^(\'-\?\!\(\)&\|@\#§<>\^\{\}\[\]\$\*%\+\/\\€)+].*#i', $value)){echo 'incorrect';}
mais sans résultat... :s
quelqu'un a t il une idée? merci d'avance! :)
J'essai de trouver une regex qui me renverrait un message d erreur si un groupe de caractères est utilisé de facon abusive (permission d'un seul de ces caractères à la fois)...
exemple de ce qui ne devrait pas passer: 'mon ch$$$at joue' ou 'mon $$$chat joue' ou 'mon chat$$$ joue' ou 'mon ch§at joue' ou 'mon chat§ joue' ou 'mon §chat joue'
exemple de ce qui pourrait passer: 'mon ch$at joue' ou 'mon $chat joue' ou 'mon chat$ joue' ou 'mon ch&at joue' ou 'mon chat& joue' ou 'mon &chat joue'
j'ai tenté un
if (!preg_match('#.*[^(\'-\?\!\(\)&\|@\#§<>\^\{\}\[\]\$\*%\+\/\\€)+].*#i', $value)){echo 'incorrect';}
mais sans résultat... :s
quelqu'un a t il une idée? merci d'avance! :)
A voir également:
- Regex ne commence pas par
- Regex tout sauf - Forum Java
- Iphone je n'entend pas mon interlocuteur sauf en haut parleur ✓ - Forum iPhone
- Je n'entend pas mon interlocuteur sauf en haut parleur samsung - Forum Samsung
- Regex negation chaine caractère - Forum Programmation
- Expressions régulières "ne contient pas ..." ✓ - Forum Programmation
2 réponses
si je comprends bien ta demande, ton soucis est de spécifier le nombre de fois ou le caractère est présent dans la string, avec un groupement ou tu peux l'avoir 1 seul fois (genre ton $) et un autre groupement ou tu ne peux pas l'avoir du tout (genre ton §)
Si oui, il faut utiliser la syntaxe suivante :
Ici, c'est pour avoir le droit d'avoir 1 seul $ (à la suite) et aucun § dans la string contenue dans $value.
Si oui, il faut utiliser la syntaxe suivante :
if (preg_match('#([\$]{2,})|([§]{1,})#i', $value)){echo 'incorrect';}
Ici, c'est pour avoir le droit d'avoir 1 seul $ (à la suite) et aucun § dans la string contenue dans $value.