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 414
    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 414
    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
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
Référencer expressions similaire Débuter en référencement 31 Mars 2015
Utilisation du caractère ' dans les mots et expressions clés Débuter en référencement 24 Avril 2013
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice