Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
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 17/11/2006, 19h23   #1
Membre habitué
 
Avatar de sami_c
 
Inscription : mai 2002
Messages : 633
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 633
Points : 147
Points : 147
Par défaut chercher la position d'un texte de taille variable

Salut,
Je voudrais écrire une fonction qui lit une chaine (qui en fait est du code HTML) et qui retrouve la position de la première balise <table> sachant que cette dernière peut contenir 0 ou plusieurs attributs, donc je peux avoir
<table>
ou encore
<table id="ma_tab">
et meme :
<table width="632" height="1301" border="0" align="center" cellpadding="0" cellspacing="0" id="Tableau_01">
Quelqu'un peut me filer l'expression régulière pour retrouver ça ?
__________________
'...parfois l'informatique peut vous rendre fou...'
sami_c est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2006, 19h39   #2
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Pourquoi ne recherches-tu pas tout simplement "<table" ?
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2006, 22h43   #3
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
La fonction preg_match me semble appropriée, notamment en jouant sur le paramètre flags (requiert PHP 4.3.0 ou supérieur) :
Code :
1
2
3
4
5
6
7
 
$texte = file_get_contents('http://www.developpez.com/');
if (preg_match('#<table([^>]*)>#Ui', $texte, $m, PREG_OFFSET_CAPTURE) > 0) {
    echo 'Première balise &lt;table&gt; (' . htmlentities($m[0][0]) . ') trouvée à la position ' . $m[0][1];
} else {
    echo 'Aucune balise &lt;table&gt; trouvée';
}
Si vous avez besoin de récupérer un à un les attributs/valeurs de cette balise : preg_split('/\s+/', $m[0][0], -1, PREG_SPLIT_NO_EMPTY).


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h35.


 
 
 
 
Partenaires

Hébergement Web