8791 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Je cherche à coder une fonction en PHP pour parser du texte. Je souhaite à la manière de Facebook que ma fonction cherche les mots (des noms de groupes en l'occurrence) qui ont une arobase devant eux (ex: @mot), et que celle ci remplace ces mots par des liens.

Une difficulté aussi, certains mots peuvent être en deux parties : @Iron Maiden

J'ai besoin de vos lumières pour me mettre sur la voie Smiley smile

Merci d'avance !
Salut Victor,

Oui je me doute que je vais avoir besoin de preg_replace() ou str_replace(), mais j'aimerai avoir un exemple de code qui me mette sur la voie. J'ai déjà chercher avant de venir poster ici Smiley cligne
moi ce qui me gène plus, c'est l'espace.... Comme ton programme est sensé faire pour distinguer @Iron Maiden et @Metallica est
Prendre le mot suivant si la première lettre est une majuscule ou un nombre ?

Bien sur ça implique un respect d'une casse précise.

Sinon, je rejoint ton avis, et en indiquant clairement que c'est mort.

Facebook peut fonctionner avec ça car c'est lors de la saisi, ce n'est pas le parseur qui agit.
Si c'est pour gérer une casse précise, autant utiliser l'underscore et l'ôter à l'affichage ^^ Et dans ce cas-là, il s'agit simplement de vérifier si un mot commence par @ ce qui n'est pas le plus complexe ^^