-
utilisation preg_replace
Salut tout le monde,
je debute en regex, et j'ai quelques difficultés à utiliser le preg_replace..
voici mon probleme :
je voudrais remplacer une chaine comme :
<div style... </div> par une balise 'balise_div'
j'utilise la fonction suivante :
$content = preg_replace("#^(<div[.]+</div>)$#", "balise_div", $content) ;
je veux donc remplacer le contenu de la 1e parenthese par 'balise_div',
mais ça ne marche pas du tout..
désolé, ce sont mes débuts, si vous pouviez m'aider, ce serait trop cool :)
merci à tous !!
-
Salut,
Si c'est en PHP comme en Python que je connais mieux, le fait de mettre le point entre crochets lui fait perdre son caractère spécial
[.]+ ne va donc matcher qu'une succession de points, strictement parlant des caractères 'point'
Comme il n'y a aucune option spécifiée dans ta RE, et donc notamment pas l'option m, les signes ^ et $ spécifient le début de la chaîne et soit la fin de chaîne (s'il n'y a pas plusieurs lignes) soit la fin de ligne.
Ton expression signifie donc que tu veux remplacer la première ligne par 'balise_div' , et pas plus.
http://fr2.php.net/manual/fr/referen....modifiers.php
-
merci, en effet, je mélangeais un peu tout ;)
j'ai fini par trouver une regex qui fonctionne pour ma recherche de string,
c'est :
$content = preg_replace('/<div[^>]*>.*?<\/div>/s', '[balise_div]', $content);
merci de ta réponse,
a+