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 contenant des "" [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2
    Par défaut Regex contenant des ""
    Bonjour
    J'ai un problème avec une regex que j'essaye de faire.
    En gros, je veux récupérer les champs d'un fichier Selenium. J'ai donc plusieurs lignes de ce type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        $this->click("rep3_0");
        $this->type("nom", "Dupont");
        $this->type("prenom", "Martin");
    Dans lesquels je veux donc récupérer "nom" et "prenom"
    J'ai réussi grâce à une première regex à enlever le début, ce qui fait qu'il me reste des lignes de ce type la:
    rep3_0")
    nom", "Dupont")
    prenom", "Martin")
    Je voudrais donc utiliser une seconde fois preg_replace, en remplaçant la fin par une chaine vide, à partir du guillemet.
    Mais j'ai un peu de mal à trouver la regex qu'il faut, je voudrais dire une chaine qui commence par " et qui se termine par ")

    J'ai donc essayé un truc du genre, en essayant séparément les deux expressions:
    /^"/ commence par "
    /"\)$/ termine par ")
    Mais ça ne fonctionne pas. Je suis pas très douée en regex, et j'aimerais donc solliciter votre aide pour ce problème
    De plus, je ne sais pas si c'est vraiment possible de sélectionner toute l'expression de cette façon, en réunissant les deux regex en une.

    Merci d'avance pour l'aide

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Salut,

    Utilises une classe négative :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    $str = '$this->click("rep3_0");
    $this->type("nom", "Dupont");
    $this->type("prenom", "Martin");';
     
    $reg = '#^[^"]*"([^"]+).*#mx';
    print preg_replace($reg, '$1', $str);

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2
    Par défaut
    Ca marche impecablement, merci beaucoup :)

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

Discussions similaires

  1. Variable contenant des quotes
    Par Laurinette57 dans le forum SAS Base
    Réponses: 1
    Dernier message: 18/05/2015, 10h26
  2. Réponses: 4
    Dernier message: 06/02/2013, 10h34
  3. [TSQL]Probleme d'insertion d'une chaine (varchar) contenant un simple quote
    Par Anthony.Desvernois dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 04/07/2007, 15h57
  4. [XML]Protection des doubles quotes
    Par DarkNagash dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 27/04/2006, 10h59
  5. [Tableaux] souci avec des simples quotes
    Par Jean Fi dans le forum Langage
    Réponses: 6
    Dernier message: 29/03/2006, 20h13

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