Bonjour

Débutant Java, je souhaite détacher d'une String les caractères entre les dièses. Après investigation, voici ci-dessous ce que j'ai codé et le résultat (qui est bien le résultat recherché) mais peut-être y aurait t-il une méthode plus optimale (ici, une copie répétée de la String d'origine)

Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
String s = "ab#cde#fg#hijk#";
String s1;
int taille, ind;
 
Code :
/**
 * Objectif : obtenir successivement dans s1 :
 * ab
 * cde
 * fg
 * hijk
 */
 
taille = s.length();
 
ind = 0;
s1 = s.substring(0,s.indexOf("#"));
System.out.println("s1 = " + s1);        
ind = ind + (s1.length()+1);
 
while (ind < taille) {            
            s1 = s.substring(ind,taille);
            System.out.println("s1 intermédiaire = " + s1);
            s1 = s1.substring(0,s1.indexOf("#"));
            System.out.println("s1 = " + s1);            
            ind = ind+(s1.length()+1);
} // Fin while
Résultat :
run:
s1 = ab
s1 intermédiaire = cde#fg#hijk#
s1 = cde
s1 intermédiaire = fg#hijk#
s1 = fg
s1 intermédiaire = hijk#
s1 = hijk