IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Regex mysql, à l'exclusion de [RegEx]


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Vietnam

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Regex mysql, à l'exclusion de
    Bonjour,

    Je n'arrive pas à concocter une 'condition excluante' dans ma regex mysql. Je m'explique :
    J'ai une regex qui va chercher un $mot dans un champ. Jusque là, pas de problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requete = mysql_query("SELECT * FROM $table WHERE champ REXEP \'\[[:<:]]'.$mot.'\[[:>:]]\'");
    Or, dans le champ, il peut y avoir une ou plusieurs balises <lien(Blabla blabla bla/code)/> (ce sont des balises persos qui me permettent de créer un lien redirigeant vers une page, sous la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="code" style="...">Blabla blabla bla</a> ;
    je n'avais pas envie d'écrire les liens en entier à chaque fois !).

    Ce que je voudrais, c'est que ma regex capture $mot quand il se trouve hors du lien et/ou dans la partie "Blabla blabla bla" du lien, mais pas dans la partie code (qui figure dans le deuxième argument de ma balise <lien(.../...)/>).

    Exemples :
    si le champ contient : 'J'aime les patates', $requete doit le capturer.
    si le champ contient : 'J'aime les pommes et les <lien(patates/feculents)/>', $requete doit aussi le capturer.
    mais si le champ contient : 'J'aime les pommes et les <lien(pommes de terre sautées/patates_sautes)/>', il ne doit pas être retourné.

    Comment faire ?
    Merci !

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Hello t'as quelle version de MySQL ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Vietnam

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    oh, désolé, j'avais pas vu ta réponse, j'attendais un mail d'avertissement – j'ai pas dû activer l'option...

    Réponse: Mysql 5.1.33
    Merci

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Poldybloom Voir le message
    oh, désolé, j'avais pas vu ta réponse, j'attendais un mail d'avertissement – j'ai pas dû activer l'option...

    Réponse: Mysql 5.1.33
    Merci
    comme ta la 5.1 tu peux utiliser xpath pour faire tes requêtes :
    http://dev.mysql.com/doc/refman/5.1/...functions.html

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Vietnam

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Ouch quel baragouin ! Je pige que dalle :p
    Bon, peu importe – j'ai trouvé une solution, en repensant complétement mon moteur de recherche...
    Merci quand même pour la participation !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RegEx] regex et condition exclusive ?
    Par tintin72 dans le forum Langage
    Réponses: 4
    Dernier message: 25/08/2008, 16h32
  2. Regex et mysql
    Par despe dans le forum Requêtes
    Réponses: 3
    Dernier message: 20/12/2007, 13h43
  3. [MySQL] requete d'exclusion
    Par mkaffel dans le forum Requêtes
    Réponses: 2
    Dernier message: 04/12/2007, 15h11
  4. regex et exclusion de chaîne
    Par bobuse dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 24/10/2007, 13h27
  5. [MySQL] Exclusion sur des champs de 2 tables différentes
    Par bermu01 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 14/11/2006, 23h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo