Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/09/2008, 14h35   #1
Candidat au titre de Membre du Club
 
Inscription : août 2008
Messages : 41
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 41
Points : 11
Points : 11
Par défaut problème avec preg_replace

Bonjour,
j'ai un problème avec la fonction preg_replace.
en fait dans mon moteur de recherche, je voudrais que ma chaine de sortie $sortie soit affiché en gras.
le problème est que lorsque je recherche un mot composé par exemple : ora b
je retrouve comme résultat <b>orab

voici le code
Code :
1
2
3
4
 
$rech= "/$mots/i";
$sortie = '<b>$1</b>';
echo pre_replace($rech,$sortie,$titre);
comment faire pour enlever se <b> de ma recherche
mike_chti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/09/2008, 16h59   #2
Nouveau Membre du Club
 
Inscription : août 2007
Messages : 51
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 51
Points : 39
Points : 39
Salut,

Le problème viens des catactères séparateur de ta regex.

Code :
1
2
3
4
Tu recherche : 
$rech= "/$mots/i";
$sortie = '<b>$1</b>';
echo pre_replace($rech,$sortie,$titre);
Hors le séparateur de regex '/' et le '</b>' de ta balise rentre en 'conflit' disont que le / de ta balise fermante est considéré comme le caractère de fin de ta regex.

Il te suffit de mettre :
Code :
1
2
3
4
 
$rech= "#$mots#i";
$sortie = '<b>$1</b>';
echo pre_replace($rech,$sortie,$titre);
oOSebOo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/09/2008, 17h12   #3
Candidat au titre de Membre du Club
 
Inscription : août 2008
Messages : 41
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 41
Points : 11
Points : 11
Merci pour votre aide.
Bonne continuation
mike_chti est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h46.


 
 
 
 
Partenaires

Hébergement Web