begin process at 2012 05 28 19:13:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Comment parser du HTML de facon linéaire ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment parser du HTML de facon linéaire ?

lundi 16 novembre 2009 à 00:40:08 | Comment parser du HTML de facon linéaire ?

bluemandfr

Bonjour à tous !

Je cherche une fonction qui me permettrait de parser du HTML contenu dans une variable $HMTL, et ce, de manière linéaire (pas d'arborescence), et plus précisément, que la fonction retourne un tableau à 2 dimensions avec pour chaque ligne i :

Result[i][0] : un booléen : true = indique que la ligne est une balise et false que la ligne est du texte hors balises.
Result[i][1] : une string valant soit une balise (exemple : <font color=#FF0000>) ou le texte entre deux balises.

Attention :
- Cette fonction doit tenir comte que dans le texte, il peut y avoir des caractères < ou >
- Elle doit aussi parser du HTML contenant du Javascript.

Si vous savez comment réaliser cela, ou bien si vous connaissez une fonction écrite par quelqu'un, merci de me le faire savoir!

BlueMan.

lundi 16 novembre 2009 à 15:29:04 | Re : Comment parser du HTML de facon linéaire ?

Tonio_35

Bon c'est une idée pour une réflexion de départ, pas une solution :

Code PHP :
<?php
for ($c = 0, $total=strlen($HTML); $c<$total; $c++)
{
	// Si le caractère est un < on entre dans du html
	if ($txt[$c]=="<")
		$inhtml=true;
	// Si t'est dans une balise et que tu croise un >, c'est la fin de la balise
	if($inhtml && $txt[$c]==">")
		$inhtml=false;
}
?>

Pour ce qui es de savoir si c'est un < de balise ou un < mis au hasard dans le texte c'est plus dur...
_________________________________
Min iPomme
lundi 16 novembre 2009 à 20:58:07 | Re : Comment parser du HTML de facon linéaire ?

kohntark

Membre Club
Salut,

Le mieux reste de créer une classe à grand coup de regex, sans cela il me parait difficile d'atteindre le but.
Il faut aussi bien définir ce que tu veux :
- parser ? ça veut tout et rien dire : quel est le but ?
- que souhaites tu parser : du HTML d'il y a 10 ans (comme l'exemple que tu cites) ou du XHTML Strict ?
- etc ...


Cordialement,


Kohntark -



Cette discussion est classée dans : ligne, fonction, html, parser, linéaire


Répondre à ce message

Sujets en rapport avec ce message

Mailto [ par hicksman ] Bonjour,je suis en train de faire un petit service d'e-card. Tout fonctionne bien sauf l'envoi. Hé oui, la fonction mail() étant déasctivé chez free, pb fonction js pour submit de formulaire dynamique [ par BDdev ] HELP !!!!je créé dynamiquement sur une page un tableau contenant les résultats d'une requete sql et dans chaque ligne un formulaire (caché) et je voud Fonction error ligne 2 [ par tutouche ] Bonjour,GGGrrrr.J'ai une error que je ne trouve pas :"Warning: Missing argument 2 for prixfr() in c:\program files\easyphp\www\prixfr.php on line 2123 pb tableau HTML [ par Joez ] Bonjour voila, je dois remplir un tableau HTML ( 4 x 4 ) en remplissant ligne par ligne. Comment faire pour remplir d'abord les 4 premieres cellules d Je précise ma question: [ par lelougarou ] Bonjour,Pourriez-vous me dire si vous connaisez une méthode pour lire un fichier HTML sur un serveur quelconque, en retenir une partie (de telle ligne "mise en page" sur plusieurs cellules HTML [ par donben ] Bonjour à tous, je cherche à développer une fonction qui permettrait de séparer de manière "intelligente" ;-) un court texte sur plusieurs cellules de probleme fonction [ par jokyler ] Bonjour,j'ai récupéré un script qui permet de changer de couleur sur une ligne d'un seulement je n'arrive pas à utiliser l'évènement onclick ..Voici redirection en fonction de la valeur d'un cookie [ par fotik ] Bonjour à toutes et à tous !!!Je cheche une solution pour rediriger mes visiteurs en fonction de la valeur ou la présence d'un cookie.Le tout en php b Fonction mail() [ par micholi ] Bonjour,j'ai un script qui me permet d'envoyer un formulaire par e-mail avec la fonction mail().Dans ce script j'utilise les lignes suivantes pour env Server php [ par crashtest ] Bonjour je voudrai commencer a aprendre le php, donc j'est intaller easyphp1-8 il marche que en lan sur internet il ve pas. Pourtant j'ai deja un otr


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,040 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales