Posez votre question Signaler

[PHP] Regex

Cokolie - Dernière réponse le 8 juil. 2009 à 16:52
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:
$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
Lire la suite 

[PHP] Regex »

4 réponses
Réponse
+1
moins plus
J'ai eu la solution sur un autre forum, je la met ici si ça peut aider :)
<?php
$str = '$this->click("rep3_0");
$this->type("nom", "Dupont");
$this->type("prenom", "Martin");';

$reg = '#^[^"]*"([^"]+).*#mx';
print preg_replace($reg, '$1', $str);
?>
Ajouter un commentaire
Réponse
+0
moins plus
Jette un oeil par la :

http://www.siteduzero.com/tutoriel-3-14663-memo-pour-les-regex.html

;)
Ajouter un commentaire
Réponse
+0
moins plus
#^guitare# La chaîne doit commencer par "guitare"
#guitare$# La chaîne doit se terminer par "guitare"

C'est bien ce que je fais, /^"/ pour commencer par "
/")$/ pour terminer par ")

Je teste mes regex sur ce site : http://lumadis.be/regex/test_regex.php
Mais non, ça ne marche pas
Ajouter un commentaire
Réponse
+0
moins plus
ok, met ton post en resolu :)
Ajouter un commentaire
Ce document intitulé « [PHP] Regex » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook