Aller au contenu

Aide sur une Regex


Sujets conseillés

Posté

Bonjour,

Je patauge gravement sur les regex, si une bonne ame daignait me dépanner, je lui en serais eternellement reconnaissant :)

voila, j'ai dans une chaine des termes (plusieurs) qui sont tous situés entre les chaines "sceq:" et '&'.

Ex : sceq:maquillage des yeux&

Je souhaite récupérer ces termes dans un tableau.

A priori, il faut une regex du style preg_match_all, mais vraiment, je comprends que pouic à la construction de ce type de regex :(.

Merci de votre coup de main.

Posté

Essaie ceci :

<?php
$chaine1="sceq:maquillage des yeux&mon truc en plume ";
$chaine2="sceq:réduction des cernes& n'importe quoi ... ici";
$chaine3="bruit de fond -
et encore ...
sceq:pédicure& - pareil ici !!!";
$chaine=$chaine1.$chaine2.$chaine3;
$matches=array();
$result=preg_match_all("#sceq:.*?",$chaine,$matches);
print "<PRE>";
print_r($matches);
print "</PRE>";
?>

Ca donnera :


Array
(
[0] => Array
(
[0] => sceq:maquillage des yeux&
[1] => sceq:réduction des cernes&
[2] => sceq:pédicure&
)

)

Posté

Merci Dan, ça va m'aider, mais, tant que tu y est, il y a pas un truc pour ne récuperer QUE ce qui est entre les balises de début et de fin ? je peux faire un str_relace, bien sur, mais ç'est une opé de plus, et au prix ou est la puissance serveur (et l'infogérance !!), si je peux éviter... :D

Posté

Plutôt simple ;)

Remplace la ligne $result=...

par ceci

$result=preg_match_all("#sceq:(.*?)",$chaine,$matches);

Et tu auras :

Array

(

[0] => Array

(

[0] => sceq:maquillage des yeux&

[1] => sceq:réduction des cernes&

[2] => sceq:pédicure&

)

[1] => Array

(

[0] => maquillage des yeux

[1] => réduction des cernes

[2] => pédicure

)

)

PS: une page que je recommande à tous de bookmarker : http://www.lumadis.be/regex/tuto_pcre.php

Posté

Merci Dan, t'es super.

Tu sais que je ne code que de temps en temps, pour m'amuser, et encore, à l'ancienne école. ALors les regex, j'envisage même pas de me former. Mon rève, c'est déja, un jour, de coder en objet, et soyons fou, en MVC. Délire complet, avec un framework...

Ha, j'en frétille :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...