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 :

Remplacer une chaîne [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 41
    Par défaut Remplacer une chaîne
    Bonjour,

    Je ne suis pas du tou à l'aise avec les chaîne régulière (manque d'expérience) et du coup je n'arrive pas à résoudre mon problème.

    J'ai une variable contenant du texte et des balises HTML. Je veux remplacer la balise <img ... /> par du vide ('').

    J'ai essayé cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $depart = 'Voici une jolie image : <img src="/images/jolieimage.jpg" align="left" hspace="5" vspace="5"/> n\'est-ce pas ?';
    $arrivee = ereg_replace("<img(.*)/>", "",$depart);
    echo $arrivee;
    le soucis est que si dans la variable $depart j'ai d'autres balises (et donc avec une partie fermante), ça me supprime trop d'informations :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $depart = 'Voici une jolie image : <img src="/images/jolieimage.jpg" align="left" hspace="5" vspace="5"/> n\'est-ce pas ?<br />';
    $arrivee = ereg_replace("<img(.*)/>", "",$depart);
    echo $arrivee;
    Effectivement je n'ai pas que ça :
    "Voici une jolie image :"

    Que dois-je faire ?

    Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php 
    $depart = 'Voici une <b>jolie image</b> : <img src="/images/jolieimage.jpg" align="left" hspace="5" vspace="5"/> n\'est-ce <br />pas ?';
    $arrivee = ereg_replace("<img ([^>]*)/>", "",$depart);
    echo 'depart = '.$depart.'<br />'."\n\n";
    echo 'arrivee = '.$arrivee;
    ?>
    "<img ([^>]*)/>" :
    - doit commencer par <img (avec un espace)
    - contient tout caractère sauf >
    - se termine par />

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 41
    Par défaut
    Super, merci !

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

Discussions similaires

  1. [MySQL] Remplacer une chaîne de caractères dans une base de données
    Par Furius dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 27/11/2013, 21h06
  2. Remplacer une chaîne de caractère dans un gros fichier
    Par dosilbr dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 06/03/2007, 13h38
  3. Réponses: 8
    Dernier message: 15/07/2006, 18h59
  4. [RegEx] Remplacer une chaîne avec preg_replace
    Par GregPeck dans le forum Langage
    Réponses: 3
    Dernier message: 08/12/2005, 12h21
  5. Remplacer une chaîne de caractères dans une base
    Par Furius dans le forum Requêtes
    Réponses: 4
    Dernier message: 19/10/2005, 23h03

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