Método Split() String en Java con ejemplos

El método string split() divide una string dada alrededor de las coincidencias de la expresión regular dada. Después de dividir contra la expresión regular dada, este método devuelve una array de strings.

Input String: 016-78967
Regular Expression: - 
Output : {"016", "78967"}

Las siguientes son las dos variantes del método split() en Java: 

1. Public String [] split (String regex, int limit)

Parámetros:

  • regex – una expresión regular delimitadora
  • Límite: el umbral resultante

Devoluciones: Se calcula una array de strings dividiendo la string dada.

Excepción lanzada: PatternSyntaxException : si la sintaxis de la expresión regular proporcionada no es válida.  

El parámetro límite puede tener 3 valores: 

  • limit > 0: si este es el caso, entonces el patrón se aplicará como máximo en un límite de 1 veces, la longitud de la array resultante no será mayor que n, y la última entrada de la array resultante contendrá todas las entradas más allá del último patrón coincidente.
  • limit < 0: en este caso, el patrón se aplicará tantas veces como sea posible y la array resultante puede ser de cualquier tamaño.
  • limit = 0: en este caso, el patrón se aplicará tantas veces como sea posible, la array resultante puede ser de cualquier tamaño y las strings vacías finales se descartarán.

Así es como funciona:
 
deje que la string que se dividirá sea: geekss@for@geekss

expresión regular   Límite   Resultado
@ 2 {“geekss”, ”para@geekss”}
@ 5 {“geekss”, ”para”, ”geekss”} 
@ -2 {“geekss”, ”para”, ”geekss”}
s     5 {“geek”, ”“, “@for@geek”, “”, “”}
s     -2 {“geek”, ” “, ” “, “@for@geek”, “”, “”}
s     0 {“geek”, ””, ”@for@geek”}

Los siguientes son los códigos de ejemplo de Java para demostrar el funcionamiento de split()
 
Ejemplo 1:

Java

// Java program to demonstrate working of split(regex,
// limit) with small limit.
  
public class GFG {
  
    // Main driver method
    public static void main(String args[])
    {
        // Custom input string
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("@", 2);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geekss
for@geekss

Ejemplo 2:  

Java

// Java program to demonstrate working of split(regex,
// limit) with high limit.
public class GFG {
    public static void main(String args[])
    {
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("@", 5);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geekss
for
geekss

Ejemplo 3:  

Java

// Java program to demonstrate working of split(regex,
// limit) with negative limit.
public class GFG {
    public static void main(String args[])
    {
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("@", -2);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geekss
for
geekss

Ejemplo 4:  

Java

// Java program to demonstrate working of split(regex,
// limit) with high limit.
public class GFG {
    public static void main(String args[])
    {
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("s", 5);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geek

@for@geek

Ejemplo 5:  

Java

// Java program to demonstrate working of split(regex,
// limit) with negative limit.
public class GFG {
    public static void main(String args[])
    {
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("s", -2);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geek

@for@geek

Ejemplo 6:  

Java

// Java program to demonstrate working of split(regex,
// limit) with 0 limit.
  
public class GFG {
    public static void main(String args[])
    {
        String str = "geekss@for@geekss";
        String[] arrOfStr = str.split("s", 0);
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

geek

@for@geek

2. String pública [] dividida (regex de string)

Esta variante del método de división toma una expresión regular como parámetro y divide la string dada alrededor de las coincidencias de esta expresión regular de expresión regular. Aquí, el límite predeterminado es 0.
 

Parámetros: regex – una expresión regular delimitadora

Devoluciones: Se calcula una array de strings dividiendo la string dada.

Excepción lanzada: PatternSyntaxException : si la sintaxis de la expresión regular proporcionada no es válida.  

Aquí hay algunos códigos de ejemplo de trabajo:
 
Ejemplo 1:

Java

// Java program to demonstrate working of split()
public class GFG {
    public static void main(String args[])
    {
        String str = "GeeksforGeeks:A Computer Science Portal";
        String[] arrOfStr = str.split(":");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

GeeksforGeeks
A Computer Science Portal

Ejemplo 2:

Java

// Java program to demonstrate working of split()
public class GFG {
    public static void main(String args[])
    {
        String str = "GeeksforGeeksforStudents";
        String[] arrOfStr = str.split("for");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

Geeks
Geeks
Students

Se puede ver en el ejemplo anterior que el patrón/expresión regular «for» se aplica dos veces (porque «for» está presente dos veces en la string que se va a dividir)

Java-Foundation-Course

Ejemplo 3:  

Java

// Java program to demonstrate working of split()
public class GFG {
    public static void main(String args[])
    {
        String str = "Geeks for Geeks";
        String[] arrOfStr = str.split(" ");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

Geeks
for
Geeks

Ejemplo 4:

Java

// Java program to demonstrate working of split()
public class GFG {
    public static void main(String args[])
    {
        String str = "Geeks.for.Geeks";
        String[] arrOfStr = str.split("[.]");   // str.split("."); will give no output...
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

Geeks
for
Geeks

 Ejemplo 5: 

Java

// Java program to demonstrate working of split()
public class GFG {
    public static void main(String args[])
    {
        String str = "Geekssss";
        String[] arrOfStr = str.split("s");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

Geek

En el ejemplo anterior, las strings vacías finales no se incluyen en la array resultante arrOfStr.
  
Ejemplo 6:  

Java

// Java program to demonstrate working of split()
  
public class GFG {
  
    // Main driver method
    public static void main(String args[])
    {
        String str = "GeeksforforGeeksfor   ";
        String[] arrOfStr = str.split("for");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

Geeks

Geeks
   

En el ejemplo anterior, los espacios finales (por lo tanto, no una string vacía) se convierten en una string en la array resultante arrOfStr.
 
Ejemplo 7:  

Java

// Java program to demonstrate working of split()
// using regular expressions
  
public class GFG {
    
    public static void main(String args[])
    {
        String str = "word1, word2 word3@word4?word5.word6";
        String[] arrOfStr = str.split("[, ?.@]+");
  
        for (String a : arrOfStr)
            System.out.println(a);
    }
}
Producción

word1
word2
word3
word4
word5
word6

En el ejemplo anterior, las palabras se separan cada vez que se encuentra cualquiera de los caracteres especificados en el conjunto.

Este artículo es una contribución de Vaibhav Bajpai . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *