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 26/01/2007, 18h29   #1
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
Par défaut preg_replace mauvais pattern

salut,
c'est un truc sans doute tout bête mais j'arrive pas à formuler mon expression rationnelle correctement.
Je voudrais enlever toutes les balises '<br>' d'une chaine.
J'ai fait ça :
Code :
$content = preg_replace("<br>","",$content);
mais reste '<>'.
J'ai essayé avec des {,[,(,/et même des \. Je trouve pas la bonne solution

merci d'avance pour le coup de pouce
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 18h32   #2
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
Parce que vous avez omis le délimiteur de l'expression régulière, preg_replace utilise donc < et > comme délimiteur (puisque ces symboles peuvent l'être) :
Code :
$content = preg_replace("#<br>#","",$content);
Je vous recommande de lire le tutoriel d'initiation aux expressions régulières.


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 18h38   #3
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
merci pour la réponse.
J'avais également essayé mais sans succès. Mes balises <br> ne sont pas effacées.
je vais voir le tutoriel.
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 18h42   #4
Membre éprouvé
 
Homme
Inscription : mai 2006
Messages : 694
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : Belgique

Informations forums :
Inscription : mai 2006
Messages : 694
Points : 417
Points : 417
J'ai testé ceci
Code :
$content = preg_replace("^<(br|BR|bR|Br)>$","",$content);
et le test est concluant. Désolé mais je ne sais plus si preg_replace est case sensitive ou pas.
__________________
Pensez au tag
webrider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 18h48   #5
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
j'ai un message d'erreur :
Citation:
Warning: preg_replace() [function.preg-replace]: No ending delimiter '^' found in C:\wamp\www\codes\functions\getUpdateCode2.php on line 11
deleted
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 18h57   #6
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
Bonjour,
et avec str_replace ?

Finalement, les expressions regulieres ne se justifient pas, vu que la chaine est fixe... Par contre, je ne sais pas si ca prend en compte la distinction majuscules/minuscules.

Sohnic
__________________
http://www.noctinfo.fr/

(\ _ /)
(='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
(")-(")
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 19h07   #7
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
bon j'avais dit au départ, c'est tout bête mais là ça dépasse tout...
en fait ça ne marchait pas parce que j'exécute l'expression régulière après un htmlentities, donc le <br> est en fait "&lt;br&gt;"
ce qui donne :
Code :
$content = preg_replace("#&lt;br&gt;#","",$content);
ça marche !
Merci beaucoup pour votre aide.
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h28.


 
 
 
 
Partenaires

Hébergement Web