Extraction d'url avec texte

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Extraction d'url avec texte

Re: Extraction d'url avec texte

par bunk » 10 janv. 2015, 09:48

C'est pas très joli mais pour arriver à mes fin j'ai fais ceci :

Code : Tout sélectionner

$text = 'Ici un texte avec un <a href="http://www.test.fr">premier lien </a>et la suite du texte avec un <a href="http://www.test.fr">deuxi&egrave;me lien</a>'; $text = preg_replace('#<a(.*?)>(.*?)</a>#i', '\2[***\1***]', $text); $text = str_replace('[*** href="', '(', $text); $text = str_replace('"***]', ')', $text); echo $text;
Merci pour votre aide.

Re: Extraction d'url avec texte

par tof73 » 10 janv. 2015, 00:29

$text = 'Ici un texte avec un <a href="http://www.test.fr">premier lien </a>et la suite du texte avec un <a href="http://www.test.fr">deuxi&egrave;me lien</a>';
$text = preg_replace('#<a.*?>(.*?)</a>#i', '\1', $text);
echo $text;

Extraction d'url avec texte

par bunk » 09 janv. 2015, 22:48

Bonsoir,

Je cherche à faire une petite fonction qui transformerait des liens html en texte tout en gardant le texte utilisé dans les liens.
Par exemple :

Code : Tout sélectionner

Ici un texte avec un <a href="http://www.test.fr">premier lien </a>et la suite du texte avec un <a href="http://www.test.fr">deuxi&egrave;me lien</a>
je voudrais qu'après passage dans cette fonction le texte de sortie ressemble à ceci :

Code : Tout sélectionner

Ici un texte avec un premier lien :http://www.test.fr et la suite du texte avec un deuxi&egrave;me lien : http://www.test.fr
Je sais extraire les liens de cette manière :

Code : Tout sélectionner

function convertHTMLtoTEXT($html){ $links = preg_match_all('/<a[^>]+href="([^"]+)/i', $html, $matches); if($links > 0){ print_r($matches[1]); } return $matches[1]; }
Pouvez-vous m'aider à faire la suite ?
D'avance merci.