Bonjour tout le monde,
J'ai un petit souci, je récupère des stackTrace de nature différentes (java et logicielle) et celles-ci doivent être formatées pour tenir dans une cellule de fichier CSV (lu sous Excel dira-t-on).
Voici le code "bourrin" (je l'avoue) de mon epuration :
Désolé, ce code est moche mais je ne maitrise pas assez les expressions régulières pour affiner ces quelques appels. En gros :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 newStkJava = stkJava.replaceAll("at(.)*\\)",""); newStkJava = newStkJava.replaceAll(";","").replaceAll("\n","").replaceAll("\r","").replaceAll("\t"," "); newStkLog = stkLog.replaceAll("at(.)*\\)",""); newStkLog = newStkLog.replaceAll(";","").replaceAll("\n","").replaceAll("\\/n","").replaceAll("\r","").replaceAll("\t"," ");
1- je veux virer tous les caractères générant une nouvelle cellule (';') ou une nouvelle ligne (\n,\r\n)
2- je veux virer les tabulations (\t)
3- je veux virer les lignes contenant "at.....);"
Cela fonctionne donc pour la stacktrace java StkJava mais je rencontre un problème avec l'autre stacktrace (StkLog qui fait apparaitre (en base puisque ces traces sont stockées en base) un /n ... qui génére un saut de ligne sous Excel et que je ne parviens pas a supprimer (les essais avec \\/n et /n ne semble pas faire grand chose)
Voila, donc si vous aviez une petite aide :
1- pour virer ces /n
2- pour améliorer ce code en une seule et même expression, ca pourrait m'arranger
Je suis tout ouïe !
Merci d'avance à ceux qui s'y intéresseront![]()
Partager