[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/String/split [Back]  [Original]

String.prototype.split() - JavaScript | MDN

Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.

View in English Always switch to English

String.prototype.split()

Baseline Widely available

This feature is well established and works across many devices and browser versions. Its been available across browsers since julho de 2015.

O mtodo split() divide uma String em uma lista ordenada de substrings, coloca essas substrings em um array e retorna o array. A diviso feita procurando um padro, onde o padro fornecido como o primeiro parmetro na chamada do mtodo.

In this article

Experimente

const str = "The quick brown fox jumps over the lazy dog.";

const words = str.split(" ");
console.log(words[3]);
// Expected output: "fox"

const chars = str.split("");
console.log(chars[8]);
// Expected output: "k"

const strCopy = str.split();
console.log(strCopy);
// Expected output: Array ["The quick brown fox jumps over the lazy dog."]

Sintaxe

str.split([separator[, limit]])

Parmetros

  • O caso mais simples quando o separador apenas um nico caractere que ser usado para dividir a string. Por exemplo, uma string contendo valores separados por tabulao (TSV) poderia ser analisada passando um caractere de tabulao como separador, como este: myString.split ("\ t").
  • Se o separator contiver vrios caracteres, toda a sequncia de caracteres deve ser encontrada para ser dividida.
  • Se o separator for omitido ou no aparecer dentro da str, o array retornar um elemento consistindo em toda a string.
  • Se o separator aparecer no incio (ou no final) da string, ele ainda ter o efeito de diviso. O resultado uma string vazia (ou seja, str.length == 0), que aparece na primeira (ou ltima) posio do array retornado.
  • Se o separator for uma string vazia (""), str ser convertido em um array contendo cada um de seus caracteres em UTF-16.
separator

Opcional. Especifica o caractere, ou conjunto de caracteres, a ser usado para separar a string. O separador pode ser uma string ou uma expresso regular.

Aviso: Quando uma string vazia ("") usada como separador, a string no dividida por caracteres percebidos pelo usurio (grapheme clusters) ou caracteres Unicode (pontos de cdigo), mas por unidades de cdigo UTF-16. Isso destri pares substitutos. Consulte "Como voc transforma uma string em um array de caracteres em JavaScript?" no StackOverflow.

limite

Opcional. Um nmero inteiro no negativo especificando um limite no nmero de divises a serem encontradas. O mtodo split() ainda dividir em cada ocorrncia do separador, at que o nmero de itens divididos corresponda ao limite ou que a string fique aqum do separador.

  • O array pode conter menos entradas do que o limit se o final da string for alcanado antes que o limite seja atingido.
  • Se o limit for 0, [] ser retornado.

Valor retornado

Um array de strings divididos em cada ponto onde o separador ocorre na string informada.

Descrio

Quando encontrado, o caractere designado como o separator removido da string e as substrings so retornadas em um array. Se o separator no for encontrado ou for omitido, o array ir conter um elemento consistindo da string inteira. Se o separator for uma string vazia, str ser convertida em um array de caracteres.

Se o separador for uma expresso regular que contenha parnteses de captura, cada vez que o separator for encontrado, os resultados (incluindo qualquer resultado undefined) dos parnteses de captura sero emendados ao array de sada. Entretanto, nem todos os navegadores possuem suporte a isso.

Exemplos

Usando split()

Quando a string est vazia, o split() ir retornar um array contendo uma string vazia ao invs de um array vazio. Se a string e o separador forem ambos strings vazias, um array vazio ser retornado.

js
const myString = "";
const splits = myString.split();

console.log(splits);

// retorna [""]

O exemplo a seguir define uma funo que divide uma string em um array de strings usando o separador especificado. Depois de dividir a string, a funo exibe mensagens indicando a string original (antes da diviso), o separador usado, o nmero de elementos no array e os elementos individuais do array.

js
function splitString(stringToSplit, separator) {
  var arrayOfStrings = stringToSplit.split(separator);

  console.log('A string original : "' + stringToSplit + '"');
  console.log('O separador : "' + separator + '"');
  console.log(
    "O array tem " +
      arrayOfStrings.length +
      " elementos: " +
      arrayOfStrings.join(" / "),
  );
}

var tempestString = "Oh brave new world that has such people in it.";
var monthString = "Jan,Fev,Mar,Abr,Mai,Jun,Jul,Ago,Set,Out,Nov,Dez";

var space = " ";
var comma = ",";

splitString(tempestString, space);
splitString(tempestString);
splitString(monthString, comma);

Esse exemplo produz a sada a seguir:

A string original : "Oh brave new world that has such people in it."
O separador : " "
O array possui 10 elementos: Oh / brave / new / world / that / has / such / people / in / it.

A string original : "Oh brave new world that has such people in it."
O separador : "undefined"
O array possui 1 elementos: Oh brave new world that has such people in it.

A string original : "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"
O separador : ","
O array possui 12 elementos: Jan / Feb / Mar / Apr / May / Jun / Jul / Aug / Sep / Oct / Nov / Dec

Removendo espaos de uma string

No exemplo a seguir, split() procura por 0 ou mais espaos seguidos por um ponto e vrgula seguido por 0 ou mais espaos e, quando encontrar, remove os espaos e os pontos e vrgulas da string. nameList o array retornado como resultado do split().

js
var names = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ";

console.log(names);

var re = /\s*;\s*/;
var nameList = names.split(re);

console.log(nameList);

O retorno do cdigo acima so duas linhas. A primeira linha registra a string original e a segunda linha registra o array resultante.

Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
[ "Harry Trump", "Fred Barney", "Helen Rigby", "Bill Abel", "Chris Hand " ]

Retornando um nmero limitado de divises

No exemplo a seguir, o split() procura por 0 ou mais espaos em uma string e retorna as 3 primeiras divises que encontrar.

js
var myString = "Hello World. How are you doing?";
var splits = myString.split(" ", 3);

console.log(splits);

O script exibir o texto a seguir:

["Hello", "World.", "How"]

Parnteses de Captura

Se o separator contm parnteses de captura, os resultados correspondentes so retornados no array.

js
var myString = "Hello 1 word. Sentence number 2.";
var splits = myString.split(/(\d)/);

console.log(splits);

O script exibir o texto a seguir:

[ "Hello ", "1", " word. Sentence number ", "2", "." ]

Nota: \d corresponde classe de caracteres para dgitos entre 0 e 9.

Revertendo uma String usando split()

Aviso: Esta no a melhor maneira de reverter uma string:

js
const str = "asdfghjkl";
const strReverse = str.split("").reverse().join("");
// 'lkjhgfdsa'

// split() retorna um array onde os mtodos
// reverse() e join() podem ser aplicados

No funciona se a string contm grapheme clusters, mesmo ao usar uma diviso compatvel com Unicode. (Use, por exemplo, esrever no lugar.)

js
const str = "rsum";
const strReverse = str.split(/(?:)/u).reverse().join("");
// retorna "emuer"

Bonus: use o operador === para testar se a string original era um palndromo.

Especificaes

Specification
ECMAScript 2027 LanguageSpecification
# sec-string.prototype.split

Veja tambm


Web Proxy Viewer  |  New URL  |  Original Page