Bonjour
je sais que vous autres trouverais ça assez simple
mais je souhaite extraire le Nombre 90032335 par exemple Contenue dans cette chaine..
String = DTS_90032335.Ready
j'ai essayer regexp de Java .. voici mon code ..Dites moi ce qui ne marche pas S'il vous plait..
Pattern p = Pattern.compile("DTS_^\\d*.Ready");
Matcher m = p.matcher(i);
if(m.find()){
p= Pattern.compile("\\d*");
m = p.matcher(i );
while(m.find()) {
//int number =Integer.parseInt(m.group());
System.out.println("Le nombre est "+m.group());
}
} else System.out.println(" Desolé pas de nombre trouvé");
System.out.println ("Le dernier est "+i);
}
}
Resultat..
Le fichier le plus récent du répertoire C:/JavaHome/workspace/InjectionFichier/FichierSortie est DTS_90032335.Ready
Desolé pas de nombre trouvé
Le dernier est DTS_90032335.Ready
substring permet d'extraire une sous-chaîne et indexOf permet de trouver l'indice d'une chaîne. La documentation de l'API standard s'appuie sur un anglais assez simple, je vous recommande d'utiliser un traducteur (Google Translate par exemple). Nous sommes sur un site d'entraide francophone. Néanmoins, gardez à l'esprit qu'il est quasiment impossible de faire du Java sans comprendre au moins l'anglais technique de base (on ne vous demande pas de lire du Shakespeare) et c'est encore plus vrai dans des domaines spécifiques où le nombre de personnes susceptibles de pouvoir vous aider et/ou rédiger des documentations est réduit.
En attendant, jetez un coup d'oeil à ceci (la documentation de la classe String en français).
String i=trouverFichier( FOut);
int debut = i.lastIndexOf("_");
int fin = i.lastIndexOf(".");
String Num = i.substring(debut + 1, fin);
int Nu =Integer.parseInt(Num);
Merci à vous membre de ce Sites ..grâce à vous je m'ameliore jour aprés jour.