Busca da Cadeia de Caracteres do JavaScript
- Página anterior Métodos de string JS
- Próxima página Template de string JS
Método JavaScript usado para buscar strings:
- String.indexOf()
- String.lastIndexOf()
- String.startsWith()
- String.endsWith()
String.indexOf()
indexOf()
O método retorna o texto especificado na stringPrimeira vezO índice de ocorrência (da posição):
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.indexOf("locate") // retorna 7
JavaScript começa a contar a partir de zero.
0 é a primeira posição da string, 1 é a segunda, 2 é a terceira ......
String.lastIndexOf()
lastIndexOf()
O método retorna a última ocorrência do texto especificado na string:
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.lastIndexOf("locate") // retorna 21
Se não encontrar o texto:indexOf()
E lastIndexOf()
Ambos retornam -1:
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.lastIndexOf("Bill") // retorna -1
Esses dois métodos aceitam o segundo parâmetro como a posição de início da busca:
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.indexOf("locate", 15) // retorna 21
lastIndexOf()
O método busca para trás (do final para o início), o que significa que se o segundo parâmetro for 15
Se o segundo parâmetro for especificado, a busca começará a partir da posição 15 e continuará até o início da string.
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.lastIndexOf("locate", 15) // retorna 7
String.search()
search()
O método busca um valor especificado dentro da string e retorna a posição do match:
Exemplo
let str = "Por favor, localize onde 'locate' ocorre!"; str.search("locate") // retorna 7
Você notou?
indexOf()
E search()
Esses dois métodos, são iguais?
Eles aceitam os mesmos parâmetros e retornam os mesmos valores?
Esses dois métodos não são iguais. As diferenças são as seguintes:
search()
O método não pode aceitar um segundo parâmetro de posição de início.indexOf()
O método não pode usar valores de busca poderosos (expressões regulares).
Você aprenderá mais sobre expressões regulares nos capítulos seguintes.
String.match()
O método match() busca correspondências na string com base na expressão regular e retorna os itens correspondentes como um objeto Array.
Exemplo 1
Procurar "ain" dentro da string:
let text = "A chuva na ESPANHA fica principalmente na planície"; text.match(/ain/g) // retorna o array [ain,ain,ain]
Aprenda mais sobre expressões regulares no capítulo JS RegExp.
Se a expressão regular não contiver o modificador g (executar busca global), o método match() retornará apenas a primeira ocorrência correspondente na string.
Sintaxe
string.match(regexp)
regexp | Obrigatório. O valor a ser pesquisado, é uma expressão regular. |
Retorno: | Um array, contendo os itens correspondentes, cada item correspondendo a um projeto, se não encontrar itens correspondentes, então é null. |
Exemplo 2
Executar uma busca global não case-sensitive para "ain":
let text = "A chuva na ESPANHA fica principalmente na planície"; text.match(/ain/gi) // Retorna o array [ain, AIN, ain, ain]
String.includes()
Se a string contiver o valor especificado,includes()
O método retorna true.
Exemplo
let text = "Hello world, welcome to the universe."; text.includes("world") // Retorna true
Suporte do navegador
Internet Explorer não suporta String.includes().
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 41 | Edge 12 | Firefox 40 | Safari 9 | Opera 28 |
Março de 2015 | Julho de 2015 | Agosto de 2015 | Outubro de 2015 | Março de 2015 |
Sintaxe
string.includes(searchvalue, start)
searchvalue | Obrigatório. A string a ser pesquisada. |
start | Opcional. O valor padrão é 0. Posição de início da pesquisa. |
Retorno: | Se a string contiver esse valor, então retorna true ,caso contrário retorna false . |
Versão do JS: | ES6 (2015) |
Verificar se a string contém "world", começando a pesquisa a partir da posição 12:
let text = "Hello world, welcome to the universe."; text.includes("world", 12) // Retorna false
String.startsWith()
Se a string começar com o valor especificado, então startsWith()
O método retorna true
,caso contrário retorna false
:
Exemplo
let text = "Hello world, welcome to the universe."; text.startsWith("Hello") // Retorna true
Sintaxe
string.startsWith(searchvalue, start)
Valor do parâmetro
Parâmetro | Descrição |
---|---|
searchvalue | Obrigatório. Valor a ser pesquisado. |
start | Opcional. O valor padrão é 0. Posição de início da pesquisa. |
Exemplo
let text = "Hello world, welcome to the universe."; text.startsWith("world") // Retorna false
let text = "Hello world, welcome to the universe."; text.startsWith("world", 5) // Retorna false
let text = "Hello world, welcome to the universe."; text.startsWith("world", 6) // Retorna true
Notas:startsWith()
O método distingue entre maiúsculas e minúsculas.
Internet Explorer não suporta startsWith()
Método.
A primeira versão do navegador completamente suportada é:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 41 | Edge 12 | Firefox 17 | Safari 9 | Opera 28 |
Março de 2015 | Julho de 2015 | Agosto de 2015 | Outubro de 2015 | Março de 2015 |
String.endsWith()
Se a string terminar com o valor especificado, então endsWith()
O método retorna true
,caso contrário retorna false
:
Exemplo
Verificar se a string termina com "Gates":
var text = "Bill Gates"; text.endsWith("Gates") // Retorna true
Sintaxe
string.endsWith(searchvalue, length)
Valor do parâmetro
Parâmetro | Descrição |
---|---|
searchvalue | Obrigatório. Valor a ser pesquisado. |
length | Opcional. O comprimento a ser pesquisado. |
Recupere os primeiros 11 caracteres da string que termina com "world":
let text = "Hello world, welcome to the universe."; text.endsWith("world", 11) // Retorna true
Notas:endsWith()
O método distingue entre maiúsculas e minúsculas.
Internet Explorer não suporta endsWith()
Método.
A primeira versão do navegador que completamente suporta este método é:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
Maio de 2016 | Abril de 2017 | Junho de 2017 | Setembro de 2016 | Junho de 2016 |
Referência completa de string
Para referência completa, acesse nossa referência Manual de referência de string JavaScript.
Este manual contém descrições e exemplos de todas as propriedades e métodos de string.
- Página anterior Métodos de string JS
- Próxima página Template de string JS