Java String.split

O método split é uma função da classe String do pacote java.lang, sua função é dividir uma string é um array de strings com base em um carácter ou expressão regular.

Assinaturas do método

  • public String[] split(String regex): pode ser usado passando um carácter ou expressão regular.
  • public String[] split(String regex, int limit): é usado passando um carácter ou expressão regular em conjunto com um inteiro que representa o limite, ou seja será divido em substrings até atingir esse limite.

Exemplo de uso do String.split

1 – Usando um carácter padrão como argumento:

String input = "one two three four five";
String[] output = input.split(" ");

for(String item : output) {
  System.out.println(item);
}
Java

Saída:

one
two
three
four
five
Terminal

2 – Usando uma expressão regular como argumento:

String input = "1 one 2 two 3 three 4 four 5 five";
String[] output = input.split("\\d");
		
		
for(String item : output) {
  System.out.println(item);
}
Java

Saída:


one
two
three
four
five
Terminal

3 – Usando uma expressão regular incorreta:

String input = "one two three four five";
String[] output = input.split("\\d");
		
		
for(String item : output) {
  System.out.println(item);
}
Java

Saída:

Exception in thread "main" java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
*
^
	at java.base/java.util.regex.Pattern.error(Pattern.java:2028)
	at java.base/java.util.regex.Pattern.sequence(Pattern.java:2203)
	at java.base/java.util.regex.Pattern.expr(Pattern.java:2069)
	at java.base/java.util.regex.Pattern.compile(Pattern.java:1783)
	at java.base/java.util.regex.Pattern.<init>(Pattern.java:1430)
	at java.base/java.util.regex.Pattern.compile(Pattern.java:1069)
	at java.base/java.lang.String.split(String.java:3153)
	at java.base/java.lang.String.split(String.java:3199)
	at desvendando_java/desvendando.java.strings.ConcatenandoStrings.main(ConcatenandoStrings.java:8)
Terminal

4 – Usando a sobrecarga de método e passando o parâmetro limit:

String input = "one two three four five";
String[] output = input.split("\\s", 3);
		
		
for(String item : output) {
  System.out.println(item);
}
Java

Saída:

one
two
three four five
Terminal

Referências

Mauricio Lima
Mauricio Lima

Bacharel em Ciência da Computação, profissional dedicado ao desenvolvimento de software e entusiasta da tecnologia.

Artigos: 65