Salut,
je vais réaliser un script qui passe touts les entiers sauf l'entier 14 qu'il n'est pas accepté , svp je besoin d'un pattern qui fait ça.
merci d'avance.








Salut,
je vais réaliser un script qui passe touts les entiers sauf l'entier 14 qu'il n'est pas accepté , svp je besoin d'un pattern qui fait ça.
merci d'avance.
Bonjour.
on pourait avoir plus de précision sur le but de ton script, ca aiderai, car selon ce que tu veux faire il y aurait plusieur possibilité, une simple structure de controle ou un regex ou autre chose encore.
Salut,
tu peux te servir de is_int() et de l'operateur !=
![]()








En fait je besoins de cette expression pour l'intégrer dans un htaccess,donc il me faut le pattern.
Voilà la ligne en test :
RewriteRule ^objets,c,1,70,70,([^14]),e.html$ http://localhost/monsite/objets,c,1,70,70,14,e.html [L,R]
OR ([^14]) ne marche pas !
Vous ne pourrez pas le faire alors mais vous pouvez créer une règle (même si son but n'est de ne rien faire) pour écarter cette exception :
On pourrait éventuellement ajouter une condition à votre règle de départ pour écarter ce cas :
Code X : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 # Ne rien faire si c'est ...14... RewriteRule ^objets,c,1,70,70,14,e\.html$ - [L] # Dans les autres cas, redirections RewriteRule ^objets,c,1,70,70,(\d+),e\.html$ http://localhost/monsite/objets,c,1,70,70,14,e.html [L]
La première solution est à préférer car plus claire et n'a pas besoin d'être adaptée par la suite si on change le chemin de son application.
Code X : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3# /!\ Chemin à vérifier/adapter RewriteCond %{REQUEST_URI} !^/monsite/objets,c,1,70,70,14,e\.html$ RewriteRule ^objets,c,1,70,70,(\d+),e\.html$ http://localhost/monsite/objets,c,1,70,70,14,e.html [L]








votre solution n'a pas fonctionné !!
c'est que je vais ,c'est faire une redirection vers le numéro 14 et par la suite il y a une autre règle qui fait le rewriting, donc cette ligne fonctionne mais si je tape 14 il y aura un boucle de redirection! :
RewriteRule ^objets-deco,c,1,70,70,([0-9]{0,2}[^14]),e.html$ http://127.0.0.1/monsite/objets,c,1,70,70,14,e.html [L,R]
RewriteRule ^(.*),c,([0-9]+),([0-9]+),([0-9]+),([0-9]+),(.*).html$ categories.php?a=$2&b=$3&c=$4&d=$5&e=$6
la variable en question est "d"
Si j'ai bien compris il fallait que cette exception soit également réécrite vers categories.php... ? Dans ce cas, vous pourriez faire la redirection directement à cette règle au lieu de ne rien faire :
Et il y a une boucle infinie même en conservant bien l'option [L] et en respectant leur ordre (l'exception avant les plus générales) ?
Code X : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 RewriteRule ^objets,c,1,70,70,14,e\.html$ categories.php?a=1&b=70&c=70&d=14&e=e [L] # ou semblable
Pouvez-vous donner l'intégralité de vos règles, surtout que vous ne donnez pas les mêmes entre vos différentes interventions ?
Partager