Split et StringTokenizer inefficaces pour le delimiteur "=+="
Salut,
soit le bout de code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| public static void main (String[] args){
String username = "toto";
String password = "abcd-!_$+aa=";
String DELIMITER = "=+=";
String t = username+DELIMITER+password;
String[] a = t.split(DELIMITER);
for(String s: a)
System.out.println(s);
System.out.println("");
StringTokenizer stringTokenizer = new StringTokenizer(t,
DELIMITER);
System.out.println(stringTokenizer.nextToken());
System.out.println(stringTokenizer.nextToken());
System.out.println(stringTokenizer.nextToken());
} |
Le but est de pouvoir spliter une chaine du type aaa=+=bbb, même lorsque bbb contient un + ou un =.
Le StringTokenizer, lui me fait 3 chaines, le split lui, ne découpe rien.
Y'a t-il un moyen simple de réaliser ce que je veux ?
EDIT:
bon en fait,j'ai juste à bien échapper chaque caractères dans mon split et c'est good :
Code:
String[] a = t.split("\\=\\+\\=");
Cdlt.