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

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Remplacer du texte dans HTML

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Remplacer du texte dans HTML

n°1544318
the big be​n
Posté le 18-04-2007 à 14:34:31  profilanswer
 

Bonjour,
 
J'ai un problème: dans ma DB, j'ai du texte mis en page avec du HTML.
Je dois y rechercher des mots, mais le problème est que si par exemple on tape background, il va trouver toutes les occurences de backgroud y compris dans les balises et non dans le texte "interprété".
 
Comment faire?
 
D'avance merci
 
Ben

mood
Publicité
Posté le 18-04-2007 à 14:34:31  profilanswer
 

n°1544322
MagicBuzz
Posté le 18-04-2007 à 14:37:41  profilanswer
 

si le code HTML est propre, alors tu peux charger le contenu du champ dans une variable DOM, puis effectuer la rechercher sur "innertext" ou noeud par noeud.
si ton sgbd supporte le XML, tu peux même faire la chose au niveau du sgbd, ce qui devrait être sensiblement plus performant.

n°1544325
Koyomi
www.sebastiengilles.com
Posté le 18-04-2007 à 14:40:54  profilanswer
 

et si ton html est crade ben tu va avoir le droit de te coder ton parseur ^^

n°1544327
0x90
Posté le 18-04-2007 à 14:42:37  profilanswer
 

En même temps c'est un peu bizarre d'avoir de l'HTML dans une db :/


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1544331
the big be​n
Posté le 18-04-2007 à 14:45:21  profilanswer
 

le sgdb est MsSql, il y a moyen?
Sinon le HTML dans la DB me permet simplement de garder la mise en page facilement

n°1544341
Koyomi
www.sebastiengilles.com
Posté le 18-04-2007 à 14:52:36  profilanswer
 

quelle version 2000 ? 2005 ?

n°1544342
MagicBuzz
Posté le 18-04-2007 à 14:54:56  profilanswer
 

2005, y'a moyen de tenter de moyenner (noeud par noeud par contre, car y'a pas de innertext je crois).
avec 2000, oublie :D

n°1544352
the big be​n
Posté le 18-04-2007 à 15:06:04  profilanswer
 

2005

n°1544354
MagicBuzz
Posté le 18-04-2007 à 15:07:39  profilanswer
 

donc t'as encore un petit espoir :D

n°1544357
the big be​n
Posté le 18-04-2007 à 15:13:41  profilanswer
 

Encore une chtit question:  
En pratique si je le fait dans le code je fait comment?
J'utiise la librairie System.Xml et j utilise un XmlReader c'est ca?
Comment je load mon texte dans mon XmltextReader
 
Merci de vos réponses

mood
Publicité
Posté le 18-04-2007 à 15:13:41  profilanswer
 

n°1544367
MagicBuzz
Posté le 18-04-2007 à 15:23:52  profilanswer
 

Xml.Load(<le resultat la colonne de ton dataset> );
 
Sauf que ça t'oblige à faire le truc ligne par ligne, donc c'est pas top niveau performances. Il vaut mieux faire la recherche direct dans la base.

n°1544377
the big be​n
Posté le 18-04-2007 à 15:28:55  profilanswer
 

Oui mais le but est de mettre des mots clé en couleur via une balise style <span>  
Donc si mon texte de base est "mon mot clé", je le remplace par

Code :
  1. <span background-color="FF0000"> mon mot clé </span>

 
 

n°1544439
shibawis
Posté le 18-04-2007 à 16:15:32  profilanswer
 

Je n'arrive pas a loader le code HTML dans un XmlDocument (manifestement le code est relativement mal foutu) mais hélas nous  n'avons pas la main sur cette partie.  
 
Y a t il autre une solution pour ajouter les balises span (voir réponse précédent) en sachant que si on recherchee le mot "background" par exemple ca remplace uniquement dans le texte et non dans les balises?

n°1544472
MagicBuzz
Posté le 18-04-2007 à 16:48:55  profilanswer
 

regexp alors. ça va être plus chaud, mais y'a moyen de moyenner :D
 
shibawis = grosse cloche ? un de ses collègues ?

n°1544492
the big be​n
Posté le 18-04-2007 à 17:19:27  profilanswer
 

Moi qui ai répondu avec le pseudo d'un collègue...
Ah oui la pour être chaud ca risque d'être chaud avec la regexp!


Message édité par the big ben le 18-04-2007 à 17:21:08
n°1544518
MagicBuzz
Posté le 18-04-2007 à 17:57:47  profilanswer
 

faut voir le mon côté des choses : une fois que t'as trouvé des "match", t'as plus qu'à faire des "replace" ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Remplacer du texte dans HTML

 

Sujets relatifs
[HTML/JS] Window.open et IErechercher un ou plusieurs mot present dans un texte
[ HTML ] Creation de mon site , quelques soucis...HTML et Java : lire une liste de MP3 à la suite les uns des autres.
libxml : utiliser le DTD pour remplacer les nodes manquant[JScript/HTML]Window.Status et firefox
Mysql - Compression de données texte / index fulltext ?Signature outlook html en scroll text
conversion html contenant du css en pdf (ou rtf)[Struts]Affichage de messages d'erreur avec html:errors
Plus de sujets relatifs à : Remplacer du texte dans HTML


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