Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1006 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Dictionnaire : remplacer un mot par lien?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Dictionnaire : remplacer un mot par lien?

n°1678910
aquaportai​l
Posté le 30-01-2008 à 10:43:09  profilanswer
 

Bonjour,
je tente d'améliorer un module (Wordbook) sous le CMS Xoops mais je pense qu'une telle fonction peut avoir son utilité n'importe où; le but du jeu est de remplacer un mot (ou une expression) présente dans un dictionnaire par un lien automatique vers ce mot. Un certain annonceur publicitaire utilise un tel procédé pour afficher des "bulles" adhoc en fonction du mot trouvé.
 
Dans le principe, ce n'est pas bien compliqué : créer une liste de mots existants, vérifier dans le texte si un mot est présent et ajouter le lien vers ce mot. Rien de bien sorcier en théorie.
 
Là où les choses se compliquent sérieusement, c'est lorsqu'il y a, dans le texte à "parser" des tags html qui traînent de ci, de là... et là : souci majeur!!! En effet, si l'un des mots du dictionnaire/glossaire se trouve dans un tag A ou IMG par exemple, ne serait-ce que dans la balise TITLE, voir dans le lien en lui-même, le mot va être invariablement remplacé par son lien si aucun filtrage n'est appliqué.
 
Je recherche donc une solution pour "parser" un texte, trouver les mots présents dans un dictionnaire et EVITER de remplacer le mot par son lien dans les tags html... C'est là ou j'achoppe : filtrer les tags html (ou au moins les A et IMG).
 
S'agissant d'un module d'un CMS open-source, il n'y a aucun secret d'alcôve, voici la fonction déjà créée dans ce fichier : http://www.aquaportail.com/uploads [...] ceterm.zip
J'espère que les habitués de PHP sauront facilement lire ce code (c'est assez simple).
 
Je suis loin d'être un expert en PHP, et si cela se trouve, il existe déjà une routine ou une fonction toute prête pour parser un texte sans les tags html puis les réinsérer ensuite... mais je ne m'en sors pas à ce jour. Un petit coup de main serait le bienvenu. :)  
 
Merci d'avance.
Jef


---------------
Jef - Une passion : l'aquariophilie et l'aquascaping en aquarium d'eau de mer pour un bon maintien des animaux.
mood
Publicité
Posté le 30-01-2008 à 10:43:09  profilanswer
 

n°1679029
babasss
Posté le 30-01-2008 à 13:26:37  profilanswer
 

Je pense que tu pourrais essayer de passer par des REGEXP (s'il n'exite rien de tout fait). Tu mettrais dans le critère que tu cherches une chaine sans qu'elle soit entourer de < et >.
Il faudrait qu'un pro des REGEXP passe par là et dise juste si c'est une solution faisable ....


---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Dictionnaire : remplacer un mot par lien?

 

Sujets relatifs
macro word remplacer image par texte[Réglé] remplacer la couleur orange par un autre orange
[php]coupler un bouton à un lien[JS] REmplacer la valeur d'un form, select ou option dynamiquement
Remplacer les iframe contenant du phpLien en couleur quand on est dessus
[JS] Problème de value et d'incertion de lien dans inner.HTMLOuvrir un lien dans un div
survol d'un lien, apparition decalee d'une image, au secours !!!!Diviser une bannière en plusieur lien (si possible)
Plus de sujets relatifs à : Dictionnaire : remplacer un mot par lien?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR