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.
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.