[1/2HS] preg_match php
Le
ajh-valmer

Bonjour,
Je souhaite autoriser ces caractères :
^ 0 Í 9 , + - * / .
if (preg_match("#[^^-9*+-/().$]#", $v)) {
.
Ça ne marche pas :
l'accent circonflexe (^) marque le début d'une chaÍ®ne,
et se confond avec l'accent ^ autorisé
Comment présenter la bonne syntaxe de preg_match pour le faire ?
Merci,
André Valmer
Je souhaite autoriser ces caractères :
^ 0 Í 9 , + - * / .
if (preg_match("#[^^-9*+-/().$]#", $v)) {
.
Ça ne marche pas :
l'accent circonflexe (^) marque le début d'une chaÍ®ne,
et se confond avec l'accent ^ autorisé
Comment présenter la bonne syntaxe de preg_match pour le faire ?
Merci,
André Valmer
À l'intérieur de crochets, tu dois échapper tous les caractères qui ont une signification dans
ce contexte, ^ - et ] (je crois pas qu'il y en ait d'autres)
^ signifie le début de la chaÍ®ne hors des crochets, une négation si premier caractère entre
crochets.
Je connais plus trop php mais je dirais
if (preg_match("#^[^0-9+-*/().]+$#", $v)) {
que tu dois pouvoir écrire
if (preg_match("#^[0-9^+*/().-]+$#", $v)) {
(pas besoin d'échapper le ^ s'il n'est pas en premier dans les crochets, ni le - s'il est en
dernier)
--
Daniel
La théorie est absurde dans la pratique
et la pratique est aveugle sans la théorie.
Kant