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

Web Perl Discussion :

[Regex] Reconnaissance tag PHP


Sujet :

Web Perl

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut [Regex] Reconnaissance tag PHP
    Bonjour,

    Je ne sais pas si je suis sur le bon forum ou pas. Vu que j'utilise des expressions régulières compatibles PERL il m'à cependant paru le plus approprié.

    J'essaye de reconnaitre des blocs de code PHP avec un une expression régulière. Le problème c'est qu'on peut mettre des tags PHP ouvrant <% dans le code (par exemple les envoyer dans un flux de sortie). Donc je ne peux pas juste rechercher le pattern <% ou %>. Il faudrait donc que je recherche le pattern <% mais uniquement s'il n'est pas entre "" ou ''. Chercher un caractère entre "" ne pose pas de problème (quelque chose du genre /\".*<%.*\"/), mais comment chercher un caractère uniquement s'il n'est pas entre "" ?

    Merci d'avance à tous ceux qui pourraient m'aider.

  2. #2
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Bonjour.

    Comment chercher un caractère qui ne soit pas entre "" ?
    Je pense qu'un bon [^"] serait utile dans ton cas
    Pour plus d'info, lit la FAQ
    "En essayant continuellement, on finit par réussir. Donc : plus ça rate, plus on a de chances que ça marche" (devise Shadock)
    Application :

    ainsi qu'à regarder la avant de poser une question.

    La rubrique Perl recrute, contactez-moi.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut
    A première vue [^"] ne peut pas répondre à mon besoin.
    Si je fais quelque chose du genre
    sur la chaine

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "une <% chaine";
    il va me donner

    non? Hors il n'aurait pas du être pris puisque à l'intérieur d'une chaine.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 427
    Points : 459
    Points
    459
    Par défaut
    a priori ce que tu cherche à faire est presque impossible avec une simple regexp.
    Car tu dois verifier le balancement des ", et aussi leur eventuel echappement, etc...
    Ce qu'il te faudrait c'est un vrai parseur capable de gerer la grammaire php (et HTML!), et à mon avis ca ne court pas les rue.
    Tu dois pouvoir t'en sortir en bidouillant un peu avec des regexps, mais tu aura toujours des cas plus ou moins foireux
    Recherche staigiaire(s) motivé(s) sur projet perl/reseau a grande echelle. Me contacter par mp.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut
    Ok, merci. Effectivement je dois m'y prendre mal. Ce serait à un parseur PHP de vérifier si le tag <% est dans une instruction de sortie ou pas. Sans quoi j'ai déja pensé à au moins une dizaine de cas ou ça ne fonctionne pas donc ce n'est pas la peine.

Discussions similaires

  1. regex sur tableau php
    Par skflers61 dans le forum Langage
    Réponses: 3
    Dernier message: 29/04/2014, 11h36
  2. [WD-2007] [Résolu] Macro VBA complexe avec regex et tags à modifier dans tableau
    Par nicoladastra2 dans le forum VBA Word
    Réponses: 7
    Dernier message: 19/03/2014, 12h50
  3. Pas de saut de ligne tag <?php ?> sur .phtml
    Par Pyksel dans le forum Zend Studio
    Réponses: 0
    Dernier message: 17/06/2010, 16h33
  4. [RegEx] Regex avec tags de style bbcode
    Par kaptnkill dans le forum Langage
    Réponses: 3
    Dernier message: 28/02/2009, 18h06
  5. Regex comme en php
    Par Amybond dans le forum C++
    Réponses: 4
    Dernier message: 30/08/2007, 22h47

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