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 des liens en gardant le nom [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 412
    Points : 145
    Points
    145
    Par défaut suppression des liens en gardant le nom
    Bonjour,

    j'ai dans une page des liens que je voudrais supprimer en gardant le nom du lien

    exemple j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a href="http://www.lesitedetoto.com">le nom du lien</a>
     
    <a href="http://www.lesitedetiti.com">le nom du lien numéro 2</a>
    je voudrais obtenir cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    le nom du lien
    le nom du lien numéro 2

    merci

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 144
    Points : 161
    Points
    161

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 412
    Points : 145
    Points
    145
    Par défaut
    merci pour l'info
    je vais regarder ça

    j'ai vu aussi ça sur developpez.net

    http://www.developpez.net/forums/d27...ext-outerhtml/

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 412
    Points : 145
    Points
    145
    Par défaut
    je suis allez voir du coté de DOM. je pense que c'est possible de trouver ce que je cherche mais dans mon cas j'aimerais trouver une solution par des expressions régulières

    ce code me permet de garder du texte entre les balise href , mais ce que je voudrais c'est garder le texte suivant

    blabla le texte que je voudrais garder numéro 1 textes qui reste

    le texte que je voudrais garder numéro 2 texte qui reste 2

    voila le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $test2 = "blabla <a href=\"http://www.test.com\">le texte que je voudrais garder numéro 1</a> textes qui reste 1 <a href=\"http://www.test2.com\">le texte que je voudrais garder numéro 2</a> texte qui reste 2";
     echo "<br>" ;
    echo preg_replace("`(<a[^>]*>)(.*)(<\/a>)`Ui", "",$test2);
    que dois je modifier pour obtenir le résultat escompté

    merci

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 144
    Points : 161
    Points
    161
    Par défaut
    Citation Envoyé par serna Voir le message
    je suis allez voir du coté de DOM. je pense que c'est possible de trouver ce que je cherche mais dans mon cas j'aimerais trouver une solution par des expressions régulières
    Pourquoi ? Les bibliothèques DOM sont faites pour parser du HTML. C'est l'outil le plus adéquat de loin.

  6. #6
    Membre actif Avatar de John Blobsmith
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 198
    Points : 223
    Points
    223
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $arr = array();
    $str = "blabla <a href=\"http://www.test.com\">le texte que je voudrais garder numéro 1</a> textes qui reste 1 <a href=\"http://www.test2.com\">le texte que je voudrais garder numéro 2</a> texte qui reste 2";
    preg_match_all('#(.*?)<a.*>(.*)</a>(.*?)#Uis',$str,$arr);
     
    print_r('<pre>');
    print_r($arr);
    print_r('</pre>');

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 412
    Points : 145
    Points
    145
    Par défaut
    merci asdf007, j'ai vu qu'avec DOM il était possible de faire des manipulations intéressantes sur le texte

    Nom de Zeus ! merci John "Dr. Emmett Brown" Blobsmith ! ce code peut me servir mais j'ai celui ci qui pour l'instant est plus adapté à ce que je cherche



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $texte =  "Salut ! <a href=\"http://www.tutututu.com\">texte du  lien</a> textes qui reste <a href=\"http://www.test2.com\">le texte que je voudrais garder </a>suite du texte qui reste";
    $reg='`<a[^>]+?>(.*?)</a>`';
    $output='$1';
     echo $texte=preg_replace($reg,$output,$texte);

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

Discussions similaires

  1. Suppression des liens liés à un noeud en JGraph
    Par aliouchi dans le forum Graphisme
    Réponses: 0
    Dernier message: 05/09/2013, 15h34
  2. Suppression des noms de cellule envoyant vers des liens externes
    Par deadly_muffin dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/02/2012, 14h56
  3. Suppression des liens dans 38 cellules sur 36 colonnes
    Par La Zélie dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 25/05/2008, 01h20

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