Il est possible de séparer les éléments d'une chaîne de caractères en utilisant un "caractère séparateur" :
La méthode "split" prend 2 arguments : la chaîne de caractères à séparer et le "caractère séparateur"
split("tata;titi;toto",";")
Dans l'exemple ci-dessus, la méthode "split" retourne le tableau suivant : {"tata","titi","toto"}
Saisissez, analysez et testez ce code
String str="toto;titi;tata";
String[] tab=split(str,";");
println(tab.length);
println(tab[1]);
Il est tout à fait possible d'utiliser le caractère "espace" comme "caractère séparateur". Il suffira d’écrire : split(str," " );
Écrivez un programme permettant de séparer les différents mots d'une phrase. Par exemple, en partant de la phrase "Bonjour le monde", votre programme devra permettre d'afficher ceci :
le mot n°0 est 'Bonjour'
le mot n°1 est 'le'
le mot n°2 est 'monde'
Attention votre programme devra fonctionner avec n'importe quelle phrase (donc avec n'importe quel nombre de mots).
Pour vous aider : pour que le programme fonctionne avec n'importe quelle phrase, il sera sans doute nécessaire d'utiliser une boucle.
Écrivez un programme permettant d'inverser les mots d'une phrase. Par exemple, pour la phrase "Bonjour le monde", on obtiendra "monde le Bonjour"
Pour vous aider : il faudra (sans doute) utiliser la concaténation.
La méthode "splitTokens" est une méthode "cousine" de la méthode "split" qui permet de considérer plusieurs "caractères séparateurs" en même temps.
Saisissez, analysez et testez ce code
String str="toto titi,tata;tutu! hello";
String[] tab=splitTokens(str," ;,!");
for (int i=0;i<tab.length;i=i+1){
println(tab[i]);
}
Les "caractères séparateurs" sont placés les uns à la suite des autres (y compris le caractère "espace").
La méthode "join" a l'effet inverse de la méthode "split" :
À partir d'un tableau contenant des chaînes de caractères, la méthode "join" crée une chaîne unique. Chaque élément est séparé par un "caractère de séparation"
Saisissez, analysez et testez ce code
String[] tab={"toto","titi","tata"};
String st=join(tab,";");
println(st);
Écrivez un programme permettant d'obtenir la chaîne "Bonjour le monde" à partir de la chaîne "Bonjour*le*monde" :
Avant : Bonjour*le*monde
Après : Bonjour le monde