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 :

Suppression de toutes balises [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut Suppression de toutes balises
    Bonjour,

    Je ne connais pas les regex, sinon de nom, cependant j ai a les utiliser pour vaquer toutes les balises HTML d'un paragraphe. (en php pour la generation d un pdf)
    Je me suis documenter sur le sujet, et j arrive a ca, qui selon tous ce que je lis devrait etre bon, mais ne l'est pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $description = ereg_replace('<(.*)>(.*)</(.*)>',"",$tab_datas['description']);
    Je suis vraiment pris par le temps pour ce projet, c'est pour cette raison que je me permets de poster pour ce petit probleme. Merci par avance pour vos reponses.

  2. #2
    Membre éprouvé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $description = preg_replace('<([^>]*)>(.*)</([^>]*)>',"",$tab_datas['description']);

    Et avec ca?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Non a mon grand damn pas mieux, une chaine vide est renvoye (ou FALSE ou rien) merci quand meme

  4. #4
    Membre éprouvé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Par défaut
    En même temps je sais pas si t'as bien compris comment marchait les REGEX.

    Par ce qu'en lisant ton code ca veut dire que tu remplace les element ayant comme structure :

    par rien du tout, donc tu suprime tout.

    Si ce que tu veut faire c'est supprimer les balise et garder juste le contenu il faut faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $description = preg_replace('!<[^>]*>(.*)</[^>]*>!isU',"$1",$description);
    Ou la variable $description contient ta chaine de caractère à traiter.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Je veux bel et bien SUPPRIMER toutes les balises HTML, nah Mais malheuresement ni ce que j'ai ecrit dans le premier post ni ce que tu m as suggere dans le deuxieme ne fonctionne pour betement tout supprimer le balisage HTML. MAY DAY PLEASE

  6. #6
    Membre éprouvé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Par défaut
    Bah chez moi ca marche...

    Que contient ta varaible description ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Une chaine de texte formattée en html soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <p><strong>ceci est un teste de demo</strong></p>
    <p>nsfjlsdkjgfdsg</p>
    <p>sdfgsdfgsd</p>
    <p>gfsdfgshggke^yeij yopiejy oeitjy eçuyç_eu-e(_uàç(ejj hpdjrh</p>
    <p>ryç_(èe-_èe)yh^ryjr^jrûkjyruryi</p>
    <p>sdfgsghsfd</p>
    <p>ghdfghdf</p>
    <p>ghd</p>
     
    <p>fgh</p>
    <p>df</p>
    <p>ghdfghsfhsdthsgsgghsghsfghsfghsdfghsf</p>

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Autant pour moi , je viens de me rendre compte de mon erreur , ca marche mlieux comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $description = preg_replace('!<[^>]*>!isU',"",$tab_datas['description']);
    $description = preg_replace('!</[^>]*>!isU',"",$description);
    Mercia toi pour ton aide

  9. #9
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    S'il s'agit de virer toutes les balises html, il existe une fonction pour ça : strip_tags().

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
      $chaine ='<p><strong>ceci est un teste de demo</strong></p>
                <p>nsfjlsdkjgfdsg</p>
                <p>sdfgsdfgsd</p>
                <p>gfsdfgshggke^yeij yopiejy oeitjy eçuyç_eu-e(_uàç(ejj hpdjrh</p>
                <p>ryç_(èe-_èe)yh^ryjr^jrûkjyruryi</p>
                <p>sdfgsghsfd</p>
                <p>ghdfghdf</p>
                <p>ghd</p>
                <p>fgh</p>
                <p>df</p>
                <p>ghdfghsfhsdthsgsgghsghsfghsfghsdfghsf</p>';
      echo "$chaine<br><br>";
     
      $chaine = strip_tags($chaine);
      echo "$chaine<br><br>";
    ?>

  10. #10
    Membre éprouvé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Par défaut
    Citation Envoyé par jeca Voir le message
    Bonjour,

    S'il s'agit de virer toutes les balises html, il existe une fonction pour ça : strip_tags().

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
      $chaine ='<p><strong>ceci est un teste de demo</strong></p>
                <p>nsfjlsdkjgfdsg</p>
                <p>sdfgsdfgsd</p>
                <p>gfsdfgshggke^yeij yopiejy oeitjy eçuyç_eu-e(_uàç(ejj hpdjrh</p>
                <p>ryç_(èe-_èe)yh^ryjr^jrûkjyruryi</p>
                <p>sdfgsghsfd</p>
                <p>ghdfghdf</p>
                <p>ghd</p>
                <p>fgh</p>
                <p>df</p>
                <p>ghdfghsfhsdthsgsgghsghsfghsfghsdfghsf</p>';
      echo "$chaine<br><br>";
     
      $chaine = strip_tags($chaine);
      echo "$chaine<br><br>";
    ?>

    Oui c'est vrai

    En fait j'ai été perturbé parce que je suis entrain de faire un truc similaire, mais je passe par les REGEX car ca me permet d'agir différement selon les balises. Par exemple td, je fait un espace, tr je remplace par un saut à la ligne.... Parce que le strip_tags va betement retirer toutes les balises...

    Et par exemple si tu veut te débarasser du contenu de la balise head dans le cas ou tu lis une page html le striptags t'afficherai alors les meta,les link...


    Sinon tu peut réunir tes 2 lignes en une seules (celles que je t'ai donné plus haut).

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Merci pour le strip_tag() , je prends note, j aurais gagner bcp de temps a la connaitre cette fameuse fonction

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

Discussions similaires

  1. Suppression de toutes les tables dans une base de données
    Par GDMINFO dans le forum Langage SQL
    Réponses: 5
    Dernier message: 18/04/2007, 09h24
  2. [js] suppression du contenu balise script
    Par TERRIBLE dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/02/2007, 09h45
  3. Suppression de toutes les tables d'une BDD
    Par Lucifron dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 11/04/2006, 11h52
  4. Réponses: 13
    Dernier message: 01/12/2005, 18h44
  5. Réponses: 7
    Dernier message: 18/09/2005, 00h38

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