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 16/09/2007, 14h57   #1
Invité de passage
 
Inscription : septembre 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 1
Points : 0
Points : 0
Par défaut preg_match_all renvoie la dernière valeur

Bonjour,

J' ai besoin d' un coup de main pour 3 lignes de codes.
Je récupere le content d' une page HTML et je cherche à avoir le contenu entre toutes les balises <style> et </style>. (<style> ou <style type='text/css'>)

Code :
1
2
3
4
5
6
7
8
$content = "blablabla<style type='text/css'>style1</style>blabla milieu<style type='text/css'>style1</style>";
 
preg_match_all("#<style(.*?)>([^[]+)</style>#is",$content,$out,PREG_PATTERN_ORDER);
 
foreach ($out[0] as $link)
{		 
	$final.=$link;								
}
$final retournera :
Code x :
<style type='text/css'>style1</style>blabla milieu<style type='text/css'>style1</style>

il semble me retourner TOUT le contenu entre le premier <style et le dernier </style> du document

Merci d' avance
thomas_pmbx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2007, 22h28   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
essaye cette expression régulière :
Code :
"#<style([^>]*)>([^[]+)</style>#Uis"
le 'U' est expliqué à l'adresse suivante :
http://php.net/reference.pcre.pattern.modifiers
__________________
Modérateur PHP
mathieu 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 21h08.


 
 
 
 
Partenaires

Hébergement Web