JavaScript split()

Nesta documentação de JavaScript veremos como utilizar o método split(), que permite dividir/separar strings.

Apresentaremos aqui como utilizar o método split().

JavaScript split(): Na prática
  // Array retornado: ["João", "da", "Silva", "Oliveira"]
  stringExemplo = "João da Silva Oliveira";
  resultado = stringExemplo.split(" ");
   
  // Array retornado: ["J", "o", "ã", "o", " ", "d", "a", " ", "S", "i",  
  // "l", "v", "a", " ", "O", "l" , "i", "v", "e", "i", "r", "a"]
  stringExemplo = "João da Silva Oliveira";
  resultado = stringExemplo.split("");
   
  // Array retornado: ["João", "da", "Silva"]
  stringExemplo = "João da Silva Oliveira";
  resultado = stringExemplo.split(" ", 3);
   
  // Array retornado: ["usuario", "gmail.com"]
  stringExemplo = "usuario@gmail.com";
  resultado = stringExemplo.split("@");
   
  // Array retornado: ["Os ", " números ", " precisam ser ", " removidos"]
  stringExemplo = " Os 8000 números 345 precisam ser 1 removidos";
  resultado = stringExemplo.split(/\d+/); 
   
  // Array retornado: ["exemplo", "com", "dados", "no", "formato", "csv"]
  conteudoCSV = "exemplo ; com ; dados ; no ; formato ; csv";
  resultado = conteudoCSV.split(/\s*;\s*/);

Como funciona o split()?

O método split() divide uma string em um array de strings de acordo com algum separador; por exemplo, o espaço em branco ou algo determinado por uma expressão regular. Além disso, o caractere separador é removido das substrings resultantes no array. Considerando o seguinte código:

  var stringExemplo = "João da Silva Oliveira";
  var resultado = stringExemplo.split(" ");

O valor atribuído à variável resultado será o array ["João", "da", "Silva", "Oliveira"], conforme a Figura 1.

Execução do método split()
Figura 1. Funcionamento do método split()

Sintaxe

string.split([separador [, numeroOcorrencias]])

separador é a substring ou expressão regular a ser utilizada para separar a string. Parâmetro opcional. Caso não fornecido toda a string é retornada, sem separação.

numeroOcorrencias é o número de ocorrências que será contabilizado para o separador especificado, ou o tamanho do array a ser criado para armazenar as divisões. Quando esse número é alcançado, todo o restante da string é descartado, não sendo incluído no array resultante.

Valor de retorno

É retornado um array em que cada posição armazena uma das substrings que foram separadas.

Exemplos de split()

Exemplo 1

No exemplo a seguir separamos uma string a partir dos espaços nela presentes.

  var stringExemplo = "João da Silva Oliveira";
  var resultado = stringExemplo.split(" ");

O array retornado é: ["João", "da", "Silva", "Oliveira"].

Run!
Exemplo 2

No exemplo a seguir separamos uma string considerando a letra a como caractere separador. Com o valor 2 para o segundo parâmetro serão consideradas apenas duas ocorrências do caractere a para a separação.

  var stringExemplo = "João da Silva Oliveira";
  var resultado = stringExemplo.split("a", 2);

O array retornado é: ["João d", "Silv"].

Run!
Exemplo 3

No exemplo a seguir demonstramos como recuperar os dados de um endereço separados por ponto enviados em uma string.

  var endereco = "Rua das Hortênsias.Número 120.Bairro 
    Laranjeiras.CEP 44455-000";
  var resultado = endereco.split(".");

O array retornado é: ["Rua das Hortências", "Número 120", "Bairro Laranjeiras", "CEP 44455-000"].

Run!
Exemplo 4

No exemplo a seguir separamos um endereço de e-mail em duas partes: o nome do usuário e o domínio da empresa.

  var stringExemplo = "usuario@exemplo.com.br";
  var resultado = stringExemplo.split("@");

O array retornado é: ["usuario", "exemplo.com.br"].

Run!
Exemplo 5

No exemplo a seguir passamos uma expressão regular como caractere separador. Essa expressão regular encontra qualquer número presente na string.

  var stringExemplo = "Os números 12 devem ser descartados 34 da string.";
  var resultado = stringExemplo.split(/\d+/);

O array retornado é: ["Os números ", " devem ser descartados ", " da string."].

Run!
Exemplo 6

No exemplo a seguir demonstramos como lidar com um conteúdo no formato CSV, formato em que os dados são separados por vírgula. Para isso passamos para o método uma expressão regular.

  var conteudoCSV = "exemplo ; com ; dados ; no ; formato ; csv";
  var resultado = conteudoCSV.split(/\s*;\s*/);

O array retornado é: ["exemplo", "com", "dados", "no", "formato", "csv"].

Run!

Compatibilidade entre navegadores

split() é suportado por todos os browsers apresentados na Tabela 1.

split() Chrome Firefox IE Edge Safari Opera
Sim Sim Sim Sim Sim Sim

Tabela 1. Compatibilidade do método x browsers.

Métodos semelhantes