Método Split()
String[] split(String delimiter)
El método split(String delimiter)
divide una cadena en un arreglo de subcadenas según el delimitador especificado (un carácter o secuencia de caracteres). Devuelve un arreglo donde cada elemento es una subcadena de la cadena original, separada por el delimitador.
Cómo dividir un String en un String[]
Supongamos que tenemos la tarea de dividir una oración en un arreglo de palabras. En este caso, podemos append
hasta encontrar un carácter de espacio (" "
), o podemos utilizar el método split()
.
El método split()
es un método de String
que recibe un regex
como parámetro. ¿Qué es regex
? Regex
significa expresión regular, que es esencialmente un carácter o conjunto de caracteres que usamos para dividir nuestra cadena. Podemos ingresar un carácter de espacio " "
en el regex, y entonces nuestra oración se dividirá en palabras.
Veamos un ejemplo:
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String string = "This is the sentence that we want to split"; // split the string into an array based on spaces String[] array = string.split(" "); printArray(array); } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.println(element + " "); } } }
Aquí hemos dividido la cadena en un arreglo de palabras. Usamos " "
para indicar al programa que debe dividir la oración en cada aparición de " "
.
Cómo dividir una cadena por un carácter específico
También podemos dividir nuestra cadena usando cualquier otro carácter. Por ejemplo, dividamos el enlace en la aparición del carácter "/"
.
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String link = "codefinity.com/profile/my-home"; // split the string into an array based on "/" String[] array = link.split("/"); printArray(array); // print the array elements } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.println(element + " "); } } }
Hemos dividido la URL en partes separadas en cada aparición del carácter "/"
, y ahora podemos ver cada elemento de la URL. En otras palabras, al dividir la cadena en el carácter "/"
, obtuvimos un arreglo de cadenas.
También puedes notar que el método elimina el carácter especificado del arreglo resultante al dividir.
Cómo dividir una cadena en caracteres con tipo String
Para dividir una cadena en un arreglo en cada aparición de un solo carácter, simplemente podemos usar comillas vacías ""
como parámetro. Veamos un ejemplo:
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String string = "c<>definity"; // split the string into an array of individual characters String[] array = string.split(""); printArray(array); } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.print(element + " "); } // print a new line after the array elements System.out.println(); } }
Hemos dividido la cadena en letras individuales. Podrías pensar que existe un método específico para esto, como toCharArray()
, pero la diferencia es que al usar el método split()
, obtenemos un arreglo de elementos de tipo String
, mientras que con toCharArray()
obtenemos directamente un arreglo de elementos de tipo char
.
¡Gracias por tus comentarios!