Bonjour,

J'ai un soucis avec une fonction de remplacement. Je souhaite remplacer certains mots contenu dans mon tableau $FILTRE par la valeur correspondante dans $FILTRE2.

Dans $FILTRE j'ai 2 cas possibles :

- Mots genre "tutu" : remplacement de tout mot "tutu";
- Mots genre "tut*" : remplacement de tous les mots commencant par "tut";

Voici ma fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
foreach ($FILTRE as $key => $value) {
        if($value[strlen($value)-1] == "*") { 
		$rep="".str_replace("*","",$value)."[[:alnum:]]*";
            	$msg=ereg_replace($rep,$FILTRE2,$msg);
	}
	else { 
		$rep="#".$value."#i";
		$msg=preg_replace($rep,$FILTRE2,$msg);
	}
}
Mon problème est que lorsqu'un mot interdit est inclu à un mot comme "nique" dans "veronique", ça remplace également... Je voudrais donc que la vérif se fasse uniquement sur les mots et ne prenne pas en compte les bouts de mots.

Merci de votre aide.

Alex