preg_replace et regex

Cokolie
Invité n'ayant pas de compte PHPfrance

08 juil. 2009, 15:50

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 : Tout sélectionner

$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

Eléphant du PHP | 288 Messages

08 juil. 2009, 16:30

Salut ,

Je suis pas doué avec les regex mais moi plus simple, j'aurais fais comme ca:

echo substr('nom", "Dupont")',0,strrpos('nom", "Dupont")','"'));

Voir la doc sur substr http://ca2.php.net/manual/fr/function.substr.php et strrpos http://ca2.php.net/manual/fr/function.strrpos.php

Bonne chance