IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Supprimer les balises HTML [Fait] [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut Supprimer les balises HTML
    Salut,

    J'utilise preg_replace pour supprimer toutes les balises HTML dans une chaine. Par exemple je veux remplacer <font color="red">couleur</font> par couleur.
    Le problème, c'est qu'avec cette chaine, mon code supprime tout; par contre pour une image simple, ça fonctionne.
    Voila le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $text = preg_replace("#\<(.+)\>#", "", $array['Text']);
    Que dois-je changer?
    Merci

  2. #2
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    pourquoi ne pas utiliser la fonction strip_tag() ?!

    pour ton regex tu aurait peut être oublié de spécifier le début et la fin

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Les quantificateurs PCRE sont gourmands c-à-d. qu'ils iront jusqu'au dernier </font> de ta page. Essaye:

    #<(.+?)>#s ou #<(.+)>#sU

    J'ai rajouté l'option s sinon le dot ne prendra pas les retours lignes.
    :q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
    :quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
    Jabber: ripat at im.apinc.org

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778

  5. #5
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Citation Envoyé par Kerod
    Oui pourquoi pas strip_tags ?
    Bonne question Je ne me suis même pas posé la question de si une telle fonction existait... Je vais l'utiliser du coup

    Merci

  6. #6
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 8
    Points : 8
    Points
    8
    Par défaut
    Bonjour,
    Je profite de ce topic pour exprimer mon besoin :
    j'utilisé en php la fonction str_replace() pour faire un highlight des mots clés d'une recherche dans un fichier HTML que j'ouvre et je modifie dedans avec PHP sauf que j'ai soulevé une limite à mon code c'est que par exemple lorsque je met "Body" (une balise HTML) comme mot clé ça se change aussi donc ça pose un probléme.

    Ce que j'ai besoin c'est comment remplacer le texte mais pas les balise HTML. y'en a une expression réguiliére ou autres !!

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TinyMCE] Comment supprimer les balises html
    Par Magjjy dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 10/06/2011, 14h57
  2. Supprimer les balises HTML d'un texte
    Par bellig dans le forum SQL
    Réponses: 3
    Dernier message: 04/01/2008, 17h00
  3. [RegEx] probleme de reference arrière pour supprimer les balises html
    Par Galeenet dans le forum Langage
    Réponses: 1
    Dernier message: 16/10/2007, 23h02
  4. Supprimer les balises HTML dans un TextBox
    Par calagan99 dans le forum ASP.NET
    Réponses: 9
    Dernier message: 04/07/2007, 16h38
  5. [RegEx] Supprimer les balises HTML
    Par hisy dans le forum Langage
    Réponses: 4
    Dernier message: 19/03/2006, 17h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo