-
Suppression de balise
Voila mon problème.
Je voudrait supprimer toutes les balises contenue dans un texte. Une petite expression régulière me paraissait la mailleur chose couplé avec un replaceAll.
Alors je fait ma ligne de code comme cela :
Code:
String tmp = this.getChapeau().replaceAll("<.*>","") ;
Malheureusmeent il ne me renvoie que les \n et autre caractères spéciaux :pleure: A force de chercher je finit par modifier la ligne pour qu'elle fasse ce que je veut
Code:
String tmp = this.getChapeau().replaceAll("<.{1,25}>","") ;
Mais comme ne connaissant pas forcement la taille maximal des balise ce n'est pas très correcte :?
Je croi avoir compris pourquoi ele ne me renvoyait pas ce que je voulait au debut. En fait elle prenait "<" du debut de ma ligne et le ">" de la fin et me supprimait donc tout ce qui se trouve entre les deux :( N'y a t'il pas un moyen de lui faire comprendre qu'il faut prendre les premier qu'elle trouve ou c'est mon expression qui est foireuse :aie:
-
Salut,
Il faut simplement utiliser des "quantifiers réticents" qui prendront la chaine correspondante la plus petite, contrairement aux "quantifiers avides" qui prennent la plus grande !!!
Pour cela il suffit de rajouter un simple point d'interrogation :
Code:
String tmp = this.getChapeau().replaceAll("<.*?>","") ;
Pour plus d'info : http://javasearch.developpez.com/j2s...x/Pattern.html
a++
-
Merci beaucoup ca marche .. j'avais bien vue cette histoire de avide/reticent/possessif mais j'avais un peut de mal a l'utiliser correctement.
edit : j'avai trouvé ça comme source assez bien faite
ftp://ftp-developpez.com/cyberzoide/java/regex.pdf