Bonjour,

Voila mon probléme, j'ai du texte provenant d'un bdd qui contient des lien et je voudrais pouvoir ajouter un paramètre a c'est lien.

Exemple

Ce que j'ai en bdd : mon texte bllalblbb <a href="monlien.html">mon premier lien</a> blouifdf ouuidfd <a href="http://monlien.html">mon second lien</a> fgfgfgfgfgfg
Ce que je voudrai après la regex : mon texte bllalblbb <a href="monlien.html?param=1">mon premier lien</a> blouifdf ouuidfd <a href="http://monlien.html?param=2">mon second lien</a> fgfgfgfgfgfg
Sachant que parfois dans l'url il peut y a voir un target blank et que si le href est vide ou contient un # il faut pas rajouter le paramétre.

Moi j'ai trouvé cette expression mais elle fait le contraire de ce que je veux.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
$string = '<a href="test.html">sdsdsd</a>';
$pattern = '`<a href=["\'#]?([^"\'#>]+)["\'#]?>`';
$replacement = '${1}?param=1';
echo preg_replace($pattern, $replacement, $string);
Si vous avez une idée merci a vous.