Page 1 sur 1

probeleme ereg replace.

Posté : 29 mars 2009, 12:35
par hakazizi
je voudrais supprimé tout ce qui n'est pas entre "<p class=couleurpromo>" et </p> la je ne supprime rien.
je ne sait pas combien de charactere il peu y avoir dans la balise p.
j'ai essayer plusieur regex mais sans succès pour le moment j'en suis la.
Voici la ligne qui ne fonctionne pas
$description=ereg_replace("^([<p class=couleurpromo>])([a-zA-Z0-9 éèêëÊËàâäÂÄîïÎÏûùüÛÜôöøÔÖç'</>.-])([</p>])",'',$description);
merci

Posté : 31 mars 2009, 08:20
par hakazizi
J'y suis presque mais il faut inverser la suppression. en mettant "!" devant le ereg replace sa me suppime tous.
$description=ereg_replace("^<p class=couleurpromo>([a-zA-Z0-9 éèêëÊËàâäÂÄîïÎÏûùüÛÜôöøÔÖç'</>.-]+)</p>","",$description);
un petit coup de pouce merci.

Posté : 31 mars 2009, 09:18
par julian
Pourquoi ne pas simplement supprimer tous les caractères ?
$regexp = "^<p class=couleurpromo>.*</p>";
.* permet de trouver n'importe quel caractère n'importe combien de fois.
Ensuite, tu remplace tout ça par : "<p class=couleurpromo></p>" sinon il supprime tout ;)

Posté : 31 mars 2009, 12:44
par hakazizi
Je l'est fait en 2 ligne finalement mais si il y a une methode plus optimisé je suis preneur.
$description1=ereg_replace("^<p class=couleurpromo>([a-zA-Z0-9 éèêëÊËàâäÂÄîïÎÏûùüÛÜôöøÔÖç'</>.-]+)</p>","",$description);
$description=str_replace($description1,'',$description);
merci julian d'avoir voulu essayer de m'aidé ta solution me donne le resulta inverse de ce que je veux.

Posté : 31 mars 2009, 16:57
par julian
Pardon j'ai mal lu ;) Ce code devrait fonctionner :
ereg_replace("^<p class=couleurpromo>(.*)</p>", "$1", $description);

Posté : 02 avr. 2009, 22:18
par hakazizi
sa n'enleve rien du tout.
le "$1" signifie quoi?

Posté : 02 avr. 2009, 22:29
par AB
Pour info évites d'utiliser ereg_replace. Ta fonction sera bien plus performante avec preg_replace.

Et puis il y a des bruits qui ont couru comme quoi POSIX (ereg and co) ne serait plus supporté en php6.

Sur ce point je n'ai aucune info, mais tant qu'a créer un nouveau code autant utiliser PCRE (preg and co) qui de toute façon est plus puissant et plus performant.
http://www.siteduzero.com/tutoriel-3-14 ... #ss_part_1