RegExp : comment interdire une chaine
Résolu
TheLamia
Messages postés
76
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
5 réponses
Re,
Oui dans les regex directement (source http://www.ilu.be/wiki/Les_motifs_des_REGEX )
(?=modèle)
Le test avant positif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible. Par exemple:
chat(?= perché| botté) reconnait chat seulement s'il est immédiatement suivi de perché ou botté.
\w(?!\.) reconnait un mot sauf s'il est suivit d'un point.
(?!modèle)
Le test avant négatif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible. Par exemple:
chat(?! perché| botté) reconnait chat seulement s'il n'est pas immédiatement suivi de perché ou botté.
(?<=modèle)
Le test arrière positif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible.
Exemple: (?<=\d)\d reconnait un chiffre que si il est immédiatement précedé d'un autre chiffre.
(?<!modèle)
Le test arrière négatif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible.
Exemple: (?<!\.)\w reconnait un mot seulement s'il n'est pas immédiatement précédé d'un point.
Regarde aussi (avec des exemples php)
Les tests avants positifs: (?=expression)
Les test avants négatifs: (?!expression)
Les tests arrières positifs: (?<=expression)
Les tests arrières négatifs: (?<!expression
Oui dans les regex directement (source http://www.ilu.be/wiki/Les_motifs_des_REGEX )
(?=modèle)
Le test avant positif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible. Par exemple:
chat(?= perché| botté) reconnait chat seulement s'il est immédiatement suivi de perché ou botté.
\w(?!\.) reconnait un mot sauf s'il est suivit d'un point.
(?!modèle)
Le test avant négatif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible. Par exemple:
chat(?! perché| botté) reconnait chat seulement s'il n'est pas immédiatement suivi de perché ou botté.
(?<=modèle)
Le test arrière positif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible.
Exemple: (?<=\d)\d reconnait un chiffre que si il est immédiatement précedé d'un autre chiffre.
(?<!modèle)
Le test arrière négatif, se comporte comme des parenthèses non-capturantes sauf qu'elles ne consomment rien dans la chaine cible.
Exemple: (?<!\.)\w reconnait un mot seulement s'il n'est pas immédiatement précédé d'un point.
Regarde aussi (avec des exemples php)
Les tests avants positifs: (?=expression)
Les test avants négatifs: (?!expression)
Les tests arrières positifs: (?<=expression)
Les tests arrières négatifs: (?<!expression
Salut,
Tu utilises les regex avec quoi?
En php, perl tu as les tests avant/arrière qui te permet d'exclure un partie de chaîne.
Tu utilises les regex avec quoi?
En php, perl tu as les tests avant/arrière qui te permet d'exclure un partie de chaîne.
J'utilise php.
Je veux bien en savoir plus sur ces "tests avant/arrière". Il faut utiliser des fonctions pour cela ?
Et en pure RegExp c'est pas faisable ?
Je veux bien en savoir plus sur ces "tests avant/arrière". Il faut utiliser des fonctions pour cela ?
Et en pure RegExp c'est pas faisable ?
merci !
je vais pouvoir m'en sortir avec cela.
à noter quand même qu'il n'y a pas d'outil simple pour réaliser cette opération, dommage...
néanmoins, merci de la réponse !
hopla, résolu...
je vais pouvoir m'en sortir avec cela.
à noter quand même qu'il n'y a pas d'outil simple pour réaliser cette opération, dommage...
néanmoins, merci de la réponse !
hopla, résolu...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
à noter quand même qu'il n'y a pas d'outil simple pour réaliser cette opération
Ben, justement, l'outil est là mais il faut comprendre le fonctionnement, c'est tout.
Il n'y a pas plus simple que (?=), (?<=) etc.
De toute façon le but d'une regex c'est de faire correspondre un motif, et pas de ne pas faire correspondre un motif.
Tu vois ce que je veux dire?
à noter quand même qu'il n'y a pas d'outil simple pour réaliser cette opération
Ben, justement, l'outil est là mais il faut comprendre le fonctionnement, c'est tout.
Il n'y a pas plus simple que (?=), (?<=) etc.
De toute façon le but d'une regex c'est de faire correspondre un motif, et pas de ne pas faire correspondre un motif.
Tu vois ce que je veux dire?