Rechercher : dans
Par :

[PHP] Regex

Dernière réponse le 8 jui 2009 à 16:52:26 Cokolie, le 8 jui 2009 à 15:22:13 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP
Firefox 3.5

Meilleures réponses pour « [PHP] Regex » dans :
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
PHP - Expressions régulières VoirQu'est-ce qu'une expression régulière? Les expressions régulières sont des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, c'est-à-dire permettant de trouver les portions de la chaîne correspondant au...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...
PHP - Les fichiers VoirLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier...

1

jjsteing, le 8 jui 2009 à 15:26:13
Répondre à jjsteing

2

Cokolie, le 8 jui 2009 à 15:40:35

#^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

Répondre à Cokolie

3

Cokolie, le 8 jui 2009 à 16:13:33
  • +1

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);
?>

Répondre à Cokolie

4

 jjsteing, le 8 jui 2009 à 16:52:26

Ok, met ton post en resolu :)

Répondre à jjsteing