Expressions régulières début et fin de mot

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par Orsam, 11 Août 2012.

  1. Orsam
    Orsam WRInaute discret
    Inscrit:
    26 Février 2011
    Messages:
    66
    J'aime reçus:
    0
    Bonjour à tous,

    Encore une fois, j'ai besoin de votre aide pour une expression régulière qui me pose problème depuis plusieurs jours.

    J'explique : J'ai besoin d'isoler des formules en expressions régulières.
    Code:
    1) gen(formule(D5 , 'd'),formule(D3,'r'))
    2) formule(D53,'g')
    3) formule(D5,'m')
    
    Pour cela j'ai fait simplement :
    Code:
    formule\(.*\)
    Cela fonctionne très bien pour les lignes 2 et 3, mais pour la ligne 1, la virgule se sélectionne aussi.

    Ce que je cherche à faire, c'est de lui dire de commencer au mot "formule", et de s'arrêter à la première parenthèse fermante qu'il trouve..

    J'ai essayé avec \b pour le début et fin de mot, mais rien n'y fait..

    Merci pour votre aide.

    Orsam
     
  2. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 274
    J'aime reçus:
    0
    on peut éviter la "gourmandise" des expressions régulières en ajoutant un ? après le .*
    ce qui donnerait
    Code:
    formule\(.*?\)
    sinon au lieu de mettre
    Code:
     .*
    , il faudrait mettre
    Code:
     [^\)]+
    , comme cela il prendra l'expression la plus restreinte

    un très bon programme pour tester les regex http://www.weitz.de/regex-coach/ :wink:
     
  3. Orsam
    Orsam WRInaute discret
    Inscrit:
    26 Février 2011
    Messages:
    66
    J'aime reçus:
    0
    Ca marche très bien... Un grand merci.

    Pour mes tests d'expression régulières j'utilise ceci :
    http://www.gethifi.com/tools/regex#

    Une autre petite question quand même (vue que tu es lancé :lol: )...

    Est-il possible de chercher une chaine, dans une chaine ?

    Voici ma chaine :
    Code:
    ((H) AND (toto) OR (titi) AND (test))
    Donc dans l'idée, j'ai fait ça :
    Code:
    \({2}.*\){2}
    Code:
    Pour cette expression, j'ai aussi essayé de remplacer le .* comme tu me le disais, mais aucun résultats. Enfin bref...
    Avec mon code ci-dessus, j'ai réussi à isoler ce qu'il y a entre les (( et les )).
    Maintenant, est-il possible de savoir si par exemple cette chaine obtenue contient bien le format () AND ou OR () ??

    Merci encore pour ton aide...


    Orsam
     
  4. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 274
    J'aime reçus:
    0
    là faut mettre tes "AND" ou "OR" dans ton masque
     
  5. Orsam
    Orsam WRInaute discret
    Inscrit:
    26 Février 2011
    Messages:
    66
    J'aime reçus:
    0
    Je ne peux pas faire avec la référence trouvé avec \1 par exemple ?
     
  6. Orsam
    Orsam WRInaute discret
    Inscrit:
    26 Février 2011
    Messages:
    66
    J'aime reçus:
    0
    Donc voilà,

    pour çà :
    Code:
    ((q%) AND (q%) OR (q%) AND (q%))
    j'ai fait ceci :
    Code:
    (\({1}q%\)[\s]?AND[\s]?\(q%\)|\({1}q%\)[\s]?OR[\s]?\(q%\))
    Donc ça marche bien, la seule chose, c'est que vu que je ne sais pas comment faire and OU or j'ai répété la séquence deux fois... :oops: ne m'engueulez pas, je ne sais pas faire autrement :lol: !!

    Merci

    Orsam
     
  7. Orsam
    Orsam WRInaute discret
    Inscrit:
    26 Février 2011
    Messages:
    66
    J'aime reçus:
    0
    Bon après encore un peu de travail, ça donne ça :

    Code:
    (\(q%\)[\s]+?(?:AND|OR)[\s]+?\(q%\))

    Orsam
     
Chargement...
Similar Threads - Expressions régulières début Forum Date
Idées d'expressions régulières utiles en SEO Référencement Google 17 Mai 2021
PHP Expressions Régulières ! Modifier plusieurs occurences Développement d'un site Web ou d'une appli mobile 5 Août 2015
Expressions régulières et filtre Google Analytics Google Analytics 18 Avril 2012
Expressions régulières entonnoir de conversion Google Analytics 3 Février 2012
expressions régulieres et fichier robots Débuter en référencement 27 Mai 2011
Expressions Régulières ! J'ai une question Développement d'un site Web ou d'une appli mobile 12 Avril 2011
Redirection Htaccess Expressions régulières Débuter en référencement 17 Août 2010
Expressions régulières - interdire un caractère Développement d'un site Web ou d'une appli mobile 22 Juin 2010
Pour connaisseurs en expressions regulières (regex) Développement d'un site Web ou d'une appli mobile 27 Mai 2010
url rewriting, syntaxe pour les expressions régulières... URL Rewriting et .htaccess 5 Octobre 2008
[Résolu] Problème Expressions régulières Développement d'un site Web ou d'une appli mobile 29 Octobre 2007
PHP - preg_match_all() et expressions regulieres Développement d'un site Web ou d'une appli mobile 24 Août 2007
Question expressions régulières preg_match_all PHP Développement d'un site Web ou d'une appli mobile 19 Août 2007
besoin d'un conseil sur les expressions regulières URL Rewriting et .htaccess 30 Mai 2007
Expressions régulières php pour traiter un texte Développement d'un site Web ou d'une appli mobile 26 Avril 2007
[Résolu] expressions régulières et PHP Développement d'un site Web ou d'une appli mobile 5 Avril 2007
Expressions regulieres mask Développement d'un site Web ou d'une appli mobile 20 Octobre 2006
option i dans les expressions régulières => alternative ? Développement d'un site Web ou d'une appli mobile 2 Octobre 2006
Expressions régulières URL Rewriting et .htaccess 24 Mars 2006
numérique et expressions régulières Développement d'un site Web ou d'une appli mobile 3 Février 2006