Bonsoir,
J'ai une ligne qui ressemble à ça :
J'aimerai récupérer dans une liste la partie gauche contenant les lettres, et dans une autre la partie droite contenant le nombre (qui peut être un entier ou un float).
Code : Sélectionner tout - Visualiser dans une fenêtre à part unetreslonguesuitede lettres au hasard 103,0054
J'ai réussi à séparer les nombres du type float :
Mais les entiers ne sont pas ajoutés à ma liste. J'ai trouvé ce topic (http://www.developpez.net/forums/d10...ntier-decimal/) qui en parle mais en utilisant l'expression qu'ils proposent:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Pattern p = Pattern.compile("(([0-9]+,)+[0-9]+$)"); for (i=0; i< nbRight;i++){ Matcher m = p.matcher(lineList.get(i)); while (m.find()) { rightList.add(m.group(1)); System.out.println(m.group(1)); } }
Ca ne fonctionne pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part /^(-)?[0-9]+([.,][0-9]+(e(-)?[0-9]+)?)?$/
(je n'ai pas encore cherché pour ajouter la partie gauche contenant des lettres dans une liste)
Partager