Profete162 Posté(e) 9 juillet 2010 Posté(e) 9 juillet 2010 Salut à tous, J'ai dans mon programme une chaine de caractères de la forme: quelques lettres puis quelques chiffres - exemple: IR327, THA9156 ( au hasard, des identifiants de trains.. lol) D'apres ce que je vois on a toujours la même structure: 2-3 lettres puis 2 à 4 chiffres. J'aimerais récupérer intelligemment la partie numérique de ce String sans faire de chichis. ( 327 ou 9156 dans mon exemple) Je pourrais faire en effet une boucle sur chaque caractère, vérifier si c'est un chiffre ou une lettre, et si oui, blabla... Mais je me dis qu'il doit y avoir un moyen plus simple non? Vous avez des idées?
Profete162 Posté(e) 9 juillet 2010 Auteur Posté(e) 9 juillet 2010 Pour l'instant, le moins pire que j'ai trouvé, c'est ceci: for (int i = 0; i < id.length() ; i++) { c = id.charAt(i); if (Character.isDigit(c)) { strBuffDigit.append(c); } else strBuffidLetter.append(c); } String mesLettres= strBuffLetter.toString(); String mesChiffres= strBuffDigit.toString();
Nivek Posté(e) 10 juillet 2010 Posté(e) 10 juillet 2010 Ta méthode n'est pas spécialement mauvaise. Tu pourrais effectivement t'amuser avec les regex... mais pour pas gagner quoi ? Tant que ton algo permet d'isoler les parties qui t'intéressent un seul tour sur l'ensemble des caractères, pas de soucis pour le conserver.
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.