Soucis de regex !

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

vin-moi
WRInaute impliqué
WRInaute impliqué
 
Messages: 391
Inscription: Lun Nov 22, 2004 18:13

Soucis de regex !

Message le Mer Juin 27, 2007 11:34

salut,

Voilà j'ai un tout petit soucis de regex, j'espère que vous pourrez m'aider :

Grosso modo je souhaite encadrer certains mots par deux doubles crochet ...

par exemple remplacer "blablabla titi blabla bla" par "blablabla [[titi]] blabla bla".

A priori simple ?

Seulement je souhaites prendre en compte les accents, ca donne des regex du genre :


preg_replace("#\b(t[iíîìï]{1}t[iíîìï]{1})\b#isU", "[[\\1]]", $texte, 1);

Ca marche niquel ... sauf quand le mot se termine par un accent !

si par exemple on a titîblabla , il va encadrer titî , alors que ca devrait etre empeché par le \b :( .

Vous avez une idée ?

merci d'avance !


Joe Le Mort
WRInaute impliqué
WRInaute impliqué
 
Messages: 255
Inscription: Mar Aoû 08, 2006 14:13

Message le Mer Juin 27, 2007 11:42

tu serais pas deja passé ici toi ?


Joe Le Mort
WRInaute impliqué
WRInaute impliqué
 
Messages: 255
Inscription: Mar Aoû 08, 2006 14:13

Message le Mer Juin 27, 2007 11:43


vin-moi
WRInaute impliqué
WRInaute impliqué
 
Messages: 391
Inscription: Lun Nov 22, 2004 18:13

Message le Mer Juin 27, 2007 12:06

Héhé ouais :D

Il me reste juste ce petit soucis et ca devrait fonctionner niquel :D


Joe Le Mort
WRInaute impliqué
WRInaute impliqué
 
Messages: 255
Inscription: Mar Aoû 08, 2006 14:13

Re: Soucis de regex !

Message le Mer Juin 27, 2007 13:25

vin-moi a écrit:preg_replace("#\b(t[iíîìï]{1}t[iíîìï]{1})\b#isU", "[[\\1]]", $texte, 1);

Ca marche niquel ... sauf quand le mot se termine par un accent !

si par exemple on a titîblabla , il va encadrer titî , alors que ca devrait etre empeché par le \b :( .

Vous avez une idée ? !

Moi je découperai chaque mot de la chaine dans un tableau.
S'il contient un accent, alors tu encadre la valeur.
tu parcours ton tableau et tu affiches mots à mots;

peut etre que qqun a une autre soluce :wink:

vin-moi
WRInaute impliqué
WRInaute impliqué
 
Messages: 391
Inscription: Lun Nov 22, 2004 18:13

Message le Mer Juin 27, 2007 18:22

Salut,

bah pour le moment j'ai remplace le \b par :

([^a-z0-9áâàäéêèëíîìïóôòöúûùüýçñ-]+)

pour signifier qu'il ne doit pas y avoir de lettre ou de tiret collé au mot, et ca marche bien :)


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités