Java String split ()

La méthode Java String split () divise la chaîne au niveau de l'expression régulière spécifiée et renvoie un tableau de sous-chaînes.

La syntaxe de la split()méthode string est:

 string.split(String regex, int limit)

Ici, string est un objet de la Stringclasse.

Paramètres split ()

La split()méthode string peut prendre deux paramètres:

  • regex - la chaîne est divisée au niveau de cette expression régulière (peut être des chaînes)
  • limit (facultatif) - contrôle le nombre de sous-chaînes résultantes

Si le limitparamètre n'est pas passé, split()renvoie toutes les sous-chaînes possibles.

Valeur de retour split ()

  • renvoie un tableau de sous-chaînes

Remarque: Si l'expression régulière transmise à split()n'est pas valide, la split()méthode déclenche une PatternSyntaxExpressionexception.

Exemple 1: split () Sans paramètre de limite

 // importing Arrays to convert array to string // used for printing arrays import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a::b::c::d:e"; // splitting the string at "::" // storing the result in an array of strings String() result = vowels.split("::"); // converting array to string and printing it System.out.println("result = " + Arrays.toString(result)); ) )

Production

 résultat = (a, b, c, d: e)

Ici, nous avons divisé la chaîne en ::. Comme le limitparamètre n'est pas passé, le tableau retourné contient toutes les sous-chaînes.

split () Avec paramètre limite

  • Si le limitparamètre est 0 ou négatif, split()renvoie un tableau contenant toutes les sous-chaînes.
  • Si le limitparamètre est positif (disons n), split()renvoie le maximum de nsous - chaînes.

Exemple 2: split () avec paramètre limit

 // importing Arrays to convert array to string import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a:bc:de:fg:h"; // splitting array at ":" // limit is -2; array contins all substrings String() result = vowels.split(":", -2); System.out.println("result when limit is -2 = " + Arrays.toString(result)); // limit is 0; array contains all substrings result = vowels.split(":", 0); System.out.println("result when limit is 0 = " + Arrays.toString(result)); // limit is 2; array contains a maximum of 2 substrings result = vowels.split(":", 2); System.out.println("result when limit is 2 = " + Arrays.toString(result)); // limit is 4; array contains a maximum of 4 substrings result = vowels.split(":", 4); System.out.println("result when limit is 4 = " + Arrays.toString(result)); // limit is 10; array contains a maximum of 10 substrings result = vowels.split(":", 10); System.out.println("result when limit is 10 = " + Arrays.toString(result)); ) )

Production

 résultat lorsque la limite est -2 = (a, bc, de, fg, h) résultat lorsque la limite est 0 = (a, bc, de, fg, h) résultat lorsque la limite est 2 = (a, bc: de: fg: h) résultat lorsque la limite est 4 = (a, bc, de, fg: h) résultat lorsque la limite est 10 = (a, bc, de, fg, h)

Remarque: La méthode split () prend regex comme premier argument. Si vous avez besoin d'utiliser des caractères spéciaux tels que: , |, ^, *, +etc, vous devez échapper à ces personnages. Par exemple, nous devons utiliser \+pour diviser en +.

Exemple 3: split () au caractère +

 // importing Arrays to convert array to string // used for printing arrays import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a+e+f"; // splitting the string at "+" String() result = vowels.split("\+"); // converting array to string and printing it System.out.println("result = " + Arrays.toString(result)); ) )

Production

 résultat = (a, e, f)

Ici, pour diviser une chaîne en +, nous avons utilisé \+. C'est parce que +c'est un caractère spécial (a une signification particulière dans les expressions régulières).

Articles intéressants...