Bonsoir,

je récupère le flux html d'un éditeur de texte et je voudrais vérifier qu'il ne contienne pas que des espaces [&nbsp;] et/ou retour chariots [<p>&nbsp;</p>].

J'ai pensé d'abord faire un truc que je trouve un peu bourrin :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
String exemplefluxHtml = "&nbsp;&nbsp;&nbsp;<p>&nbsp;</p>&nbsp;<p>&nbsp;</p><p>&nbsp;</p>&nbsp;";
 
String purge1 = exemplefluxHtml.replaceAll("<p>&nbsp;</p>","");
String purge2 = purge1.replaceAll("&nbsp;","");
 
if(purge2.equals(""))
    System.out.println("chaine vide");
Inutile de préciser que c'est pas très performant surtout si je prend en paramètre un gros flux html.

Ensuite, j'ai pensé à utiliser une expression régulière :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
String regexp = "(&nbsp;)*|(<p>(&nbsp;)*</p>)*";
Mais je ne vois pas comment faire dans le cas ou par exemple il y a plusieurs espaces, puis un retour chariot et à nouveau des espaces bref ou tout est mélangé comment dans mon flux exemple. Quelle piste me suggerer vous de suivre ? Avez vous une idée pour m'éclairer ?

Merci d'avance.