Bonjour,

Je possède la chaine $input suivante :
$input = '<img src="image/chat.jpg" border="0" /><div align=left>ceci est un chat</div>';

Et les 2 chaines suivantes :

$m = 'chat';
$q = 'chien';

Je souhaiterai en retour d'une fonction le résultat suivant :
$return = '<img src="image/chat.jpg" border="0" /><div align=left>ceci est un chien</div>'
c'est à dire remplacer 'chat' par 'chien' uniquement si le mot à remplacer n'est pas l'attribut d'une balise html

Je pensais faire quelque chose du genre :

*****
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
function remplace($input,$m,$q)
{
    return preg_replace("??????$m????????",$q,$input);
}
 
$return = remplace($input,$m,$q)
*****

mais j'avoue bloquer sur l'expression régulière à appliquer dans ma fonction (j'ai mis des ???? pour souligner mon désarrois)

Merci d'avance pour votre aide.