Isoler un element dans une chaine de caractère (regex ? ) [Résolu]

Signaler
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018
-
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018
-
Bonjour

Voila , j'ai une chaine de cahactère du type:
#  $chaine = 'la chaine de [item="1"]catartères/item a un nombre a isoler ';
et j'aimerais isoler et retourner le "1" contenu par la balise [item].

Je presume qu'il faille utiliser eregi et les regex, mais je n'arrive pas a les utiliser ....

Enfin, si qlq'un peu m'aider .....

Merci

4 réponses

Messages postés
239
Date d'inscription
samedi 21 février 2004
Statut
Membre
Dernière intervention
3 juin 2010
1
Salut,

il faut au préalable vérifier que la séquence "item" précède bien la séquence entière.
En complétant le masque de



vilhjalms, on obtient :

<?php
   $string = 'la chaine de [item="1"]caractères/item a un nombre à isoler';
   $pattern =



'#\[item="(\d+)"\]#i';





   echo (preg_match($pattern, $string, $matches) == 1) ? $matches[1] : '';
?>
Messages postés
591
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
16 juillet 2009
2
Saell og blesuð

echo preg_match('`"(.+?)"`',$chaine);

Vilhjálms
Sigurðsdóttir aka Frëyjá
Messages postés
591
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
16 juillet 2009
2
Saell og blesuð

Oula fatiguee moi :/

preg_match('`"(.+?)"`',$chaine,$result);
echo $result[1];

Vilhjálms
Sigurðsdóttir aka Frëyjá
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018

merci beaucoups ! :)