Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML
XML Forum d'entraide sur XML avec PHP. Exemples : SimpleXML, OpenXML... Avant de poster -> FAQ XML, Cours XML et Sources XML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/08/2011, 10h28   #1
Invité de passage
 
Inscription : janvier 2009
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 13
Points : 3
Points : 3
Par défaut Récupérer les éléments d'un code xHTML

Bonjour à toutes et à tous !

Je dois récupérer certains éléments d'un code HTML pour faire des remplacements, mais je reste bloqué sur les listes imbriqués. Sachant qu'il y a au maximum 2 niveaux de puce.

Voici un exemple de ce que j'aimerais faire. A partir de ce code:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<ul>
    <li>Puce 1
    <ul>
        <li>Sous-puce 1-1</li>
        <li>Sous-puce 1-2</li>
    </ul>
    </li>
    <li>Puce 2
    <ul>
        <li>Sous-puce 2-1</li>
        <li>Sous-puce 2-2</li>
    </ul>
    </li>
</ul>
Je voudrais faire le même remplacement sur "Puce 1" et "Puce 2" ainsi que le même remplacement sur toutes les sous-puces. Mais même avec les REGEX, je galère...

J'ai bien essayé DOM, mais ça n'a rien donné non plus

Pouvez-vous m'apporter votre aide ?

Merci d'avance.
Noxalus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 11h14   #2
Modérateur
 
Avatar de Nesmontou
 
Homme Benjamin PREVOT
Architecte de système d'information
Inscription : septembre 2004
Messages : 1 568
Détails du profil
Informations personnelles :
Nom : Homme Benjamin PREVOT
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Architecte de système d'information
Secteur : Finance

Informations forums :
Inscription : septembre 2004
Messages : 1 568
Points : 2 493
Points : 2 493
Bonjour,

Tu pourrais nous montrer le code que tu as déjà mis en place ?

Sinon, tu peux aussi jeter un oeil à cet article : http://eusebius.developpez.com/php5dom/
__________________
Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

F.A.Q. : Java, PHP, (X)HTML / CSS

N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème
Nesmontou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2011, 14h42   #3
Invité de passage
 
Inscription : janvier 2009
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 13
Points : 3
Points : 3
Bonjour !

Pour le moment, j'ai ceci:

Code :
1
2
3
 
$contexte = preg_replace('#\<li\>(.+)\</li\>#U', $puce_begin . '$1' . $puce_end, $contexte);
$contexte = strip_tags($contexte);
Ca ne fait que remplacer les "<li></li>" par des équivalents pour le format docx (en xml) => équivalents qui sont stockées à l'intérieur des balises $puce_begin et $puce_end.

Le soucis, c'est que ça ne gère pas les sous-puces.

Je regarde ton article Nesmontou
Noxalus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h12.


 
 
 
 
Partenaires

Hébergement Web