Extraire une chaine de caractère comprise entre 2 balises [Résolu]

Bountard 15 Messages postés lundi 30 mai 2005Date d'inscription 13 juillet 2005 Dernière intervention - 5 juil. 2005 à 14:53 - Dernière réponse : coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention
- 5 juil. 2005 à 17:55
Salut à tous,

j'aimerais pouvoir extraire la chaine de caractère comprise entre 2 balises, type et par exemple.

Je ne vois pas comment faire merci pour votre aide.
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 5 juil. 2005 à 17:55
3
Merci
preg_match_all("/(<ol>)(.*)(<\/ol>)/", $html, $matches, PREG_SET_ORDER);


In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org

Merci coucou747 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 73 internautes ce mois-ci

Commenter la réponse de coucou747
morpheus262 461 Messages postés mardi 27 avril 2004Date d'inscription 16 février 2012 Dernière intervention - 5 juil. 2005 à 15:19
0
Merci
Salut,

j ai une solution (qui n est surement pas la meilleur)

$tab[]=explode("",$tachaine);
et dans $tab[1] tu as ta chaine sans la balise de debut.
$tab2[]=explode("",$tab[1] );
et la dans $tab2[0] tu devrait avoir ta chaine sans les balises.
une solution mais encore une fois il doit exister mieux


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Commenter la réponse de morpheus262
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 5 juil. 2005 à 15:26
0
Merci
ton fichier est sous quel format ?

html ? xml ?



t'as tidy qui parse le html et t'as aussi un parseur xml en php

cherches sur php.net



sinon, t'as les exopressions régulières...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Commenter la réponse de coucou747
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 5 juil. 2005 à 15:27
0
Merci
Hello,



plus simple en utilisant strpos () a mon avis.

Sinon une source vient d'etre postee pour ca, je ne l'ai pas testee
mais elle n'est pas tres compliquee donc devrait fonctionner :

http://www.phpcs.com/code.aspx?ID=32482
Commenter la réponse de malalam
malik7934 1162 Messages postés mardi 9 septembre 2003Date d'inscription 15 août 2009 Dernière intervention - 5 juil. 2005 à 15:31
0
Merci
un chti exple:
<?php
$chaine= " Hello World , comment ca va?";
$chaine2 =ereg_replace('<([^>])*>',' ',$chaine);
echo $chaine2; // donne: Hello World, comment ca va
?>
Commenter la réponse de malik7934
Bountard 15 Messages postés lundi 30 mai 2005Date d'inscription 13 juillet 2005 Dernière intervention - 5 juil. 2005 à 15:34
0
Merci
en fait j'utilise ce petit programme : www.fckeditor.net, qui permet
d'editer un texte dans une page html, c'est du même type qu'ici sur les
forums.

Celui-ci produit un code, entre balise, que je transforme en Rtf par la suite.

Dans celui ci j'ai par exemple les balises :

<ol>

<li> un texte </li>

</ol>



et





<li> un autre texte </li>





Je voudrais extraire dans $valeur le contenu <li>un texte</li>



Merci d'avance.
Commenter la réponse de Bountard
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 5 juil. 2005 à 15:38
0
Merci
tidy ou les expressions régulières comme je l'ai dit plus haut ou comme l'a dit :[auteurdetail.aspx?ID=162205 malik7934] (l'exemple de malik est tiré de php.net, t'aurais pu trouver le même...)

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Commenter la réponse de coucou747
Bountard 15 Messages postés lundi 30 mai 2005Date d'inscription 13 juillet 2005 Dernière intervention - 5 juil. 2005 à 16:02
0
Merci
En effet quand une seul balise existe j'y arrive avec cette méthode,
par contre se pose un problème quand j'ai plusieurs fois les mêmes
balises, que faire a ce moment la ?

utiliser List() serait une solution, mais cela veut dire que je connais le nombre d'élements,hors je ne le connais pas.

Merci beaucoup.
Commenter la réponse de Bountard
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 5 juil. 2005 à 16:06
0
Merci
renseigne toi sur



preg_match_all

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Commenter la réponse de coucou747
Bountard 15 Messages postés lundi 30 mai 2005Date d'inscription 13 juillet 2005 Dernière intervention - 5 juil. 2005 à 16:53
0
Merci
Voila ou j'en suis, merci pour le preg_match_all c'est apperement ce qu'il me fallait.

Cependant je ne comprends pas tout a fait les exemples :



$html = '<ol> <li> un </li> <li> deux </li> </ol>';

preg_match_all("/(<([\w]+)[^>]*>)(.*)(<\/\\2>)/", $html, $matches, PREG_SET_ORDER);



Voila par exemple un petit code que j'ai modifier légerement. J'ai lu
la description des ( [ * ... mais je ne comprends pas trop ce qui se
passe ici.

J'aimerais que preg_match_all prenne que ce qui est compris entre <ol> et </ol>.

Un peu d'aide serait la bienvenue, merci d'avance.
Commenter la réponse de Bountard

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.