Remplacer du texte dans HTML - C#/.NET managed - Programmation
Marsh Posté le 18-04-2007 à 14:37:41
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.
Marsh Posté le 18-04-2007 à 14:40:54
et si ton html est crade ben tu va avoir le droit de te coder ton parseur ^^
Marsh Posté le 18-04-2007 à 14:42:37
En même temps c'est un peu bizarre d'avoir de l'HTML dans une db
Marsh Posté le 18-04-2007 à 14:45:21
le sgdb est MsSql, il y a moyen?
Sinon le HTML dans la DB me permet simplement de garder la mise en page facilement
Marsh Posté le 18-04-2007 à 14:54:56
2005, y'a moyen de tenter de moyenner (noeud par noeud par contre, car y'a pas de innertext je crois).
avec 2000, oublie
Marsh Posté le 18-04-2007 à 15:13:41
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
Marsh Posté le 18-04-2007 à 15:23:52
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.
Marsh Posté le 18-04-2007 à 15:28:55
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 :
|
Marsh Posté le 18-04-2007 à 16:15:32
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?
Marsh Posté le 18-04-2007 à 16:48:55
regexp alors. ça va être plus chaud, mais y'a moyen de moyenner
shibawis = grosse cloche ? un de ses collègues ?
Marsh Posté le 18-04-2007 à 17:19:27
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!
Marsh Posté le 18-04-2007 à 17:57:47
faut voir le mon côté des choses : une fois que t'as trouvé des "match", t'as plus qu'à faire des "replace"
Marsh Posté le 18-04-2007 à 14:34:31
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