Page 1 sur 1

remplacer un href par preg_replace

Posté : 31 janv. 2012, 11:13
par sablito
Bonjour,
J'ai le code suivant : <a href="site/nous-contacter">Contact</a>
Je veux remplacer le "site/nous-contacter" par "#contact".
Comment je dois faire ?
$text="<a href="site/nous-contacter">Contact</a>"

$text = preg_replace('|(<a\s*[^>]*href=[\'"])|','#contact', $texte);
et ca marche pas!
merci

Re: remplacer un href par preg_replace

Posté : 31 janv. 2012, 11:59
par moogli
Salut,

Vu qu'à priori le texte change pas utilise plutôt str_replace, c'est plus simple et plus rapide.


@+

Re: remplacer un href par preg_replace

Posté : 31 janv. 2012, 13:11
par sablito
merci de votre réponse :)

j'ai un autre souci, j'ai un string de ce forme: "<br><a href="index.php title="TITRE">text</a>"

moi ce que j'essaye d'avoir, c'est ce qui est écrit dans title="", dans ce cas TITRE.

comment faire??

Re: remplacer un href par preg_replace

Posté : 31 janv. 2012, 17:56
par Clafooty
le preg_match si tu veux pas faire de substring à l'arrache...
$var = "<br><a href=\"index.php title=\"TITRE\">text</a>";
preg_match("^<a href=.* title=\"(.*)\">.*\<\/a>^",$var,$matches);
$resultat = $matches[1];
echo $resultat;