Facebook pixel
>Blog>Programação
Programação

Como verificar se uma string contém outra string em JavaScript

O artigo detalha diferentes métodos em JavaScript para verificar se uma string contém outra.

Verificando se uma string contém outra string usando o método includes() em JavaScript

Quando estamos desenvolvendo em JavaScript, muitas vezes nos deparamos com a necessidade de verificar se uma string contém outra string. Felizmente, a linguagem JavaScript nos fornece várias maneiras de realizar essa verificação. Uma das formas mais comuns é utilizando o método includes().

O método includes()

O método includes() é uma função integrada no JavaScript que retorna true se a string contém a substring especificada e retorna false caso contrário. Ele verifica se a substring está presente em qualquer posição da string.

Para usar o método includes(), basta aplicá-lo à string que desejamos verificar e passar a substring como argumento. A sintaxe é a seguinte:


        let str = "Uma string de exemplo";
        let substr = "exemplo";

        if (str.includes(substr)) {
            console.log("A string contém a substring!");
        } else {
            console.log("A string não contém a substring.");
        }
    

Nesse exemplo, utilizamos o método includes() para verificar se a string “Uma string de exemplo” contém a substring “exemplo”. Caso a substring esteja presente na string, o código dentro do bloco if será executado e exibirá a mensagem “A string contém a substring!”. Caso contrário, o código dentro do bloco else será executado, exibindo a mensagem “A string não contém a substring.”

Uma vantagem do método includes() é que ele é case-sensitive, ou seja, faz diferenciação entre letras maiúsculas e minúsculas. Isso significa que se a substring estiver em uma combinação diferente de maiúsculas e minúsculas em relação à string, o método considerará que a substring não está presente.

Utilizando o método search()

Além do método includes(), outra opção para verificar se uma string contém outra em JavaScript é o método search(). O método search() realiza uma busca por uma expressão regular dentro da string e retorna o índice da primeira ocorrência encontrada.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

A sintaxe do método search() é a seguinte:


        let str = "Uma string de exemplo";
        let substr = /exemplo/;

        let result = str.search(substr);

        if (result !== -1) {
            console.log("A string contém a substring!");
        } else {
            console.log("A string não contém a substring.");
        }
    

Nesse exemplo, a variável `substr` recebe uma expressão regular `/exemplo/`. A função `search()` é aplicada à string `str`, passando a expressão regular como argumento. O método `search()` retorna o índice da primeira ocorrência da expressão regular na string. Se o valor retornado for diferente de -1, significa que a substring foi encontrada.

Uma das vantagens do método search() é que ele aceita expressões regulares como parâmetro, o que permite realizar buscas mais complexas em strings. Por exemplo, é possível fazer buscas case-insensitive utilizando a flag `i` na expressão regular, ou até mesmo buscar por padrões específicos.

No entanto, é importante destacar que o método search() retorna apenas o índice da primeira ocorrência na string. Se houver a necessidade de encontrar todas as ocorrências da substring, será preciso utilizar uma abordagem diferente, como o uso de loops ou o método match().

Como usar o método indexOf()

Outra alternativa para verificar se uma string contém outra em JavaScript é utilizando o método indexOf(). O método indexOf() retorna o índice da primeira ocorrência da substring dentro da string, ou -1 se a substring não for encontrada.

Para usar o método indexOf(), precisamos aplicá-lo à string que desejamos verificar e passar a substring como argumento. A sintaxe é a seguinte:


        let str = "Uma string de exemplo";
        let substr = "exemplo";

        let result = str.indexOf(substr);

        if (result !== -1) {
            console.log("A string contém a substring!");
        } else {
            console.log("A string não contém a substring.");
        }
    

Nesse exemplo, utilizamos o método indexOf() para verificar se a string “Uma string de exemplo” contém a substring “exemplo”. O método retorna o índice da primeira ocorrência da substring na string. Se a substring não for encontrada, o método retorna -1.

O método indexOf() também pode receber um segundo parâmetro opcional, que define a partir de qual posição da string a busca deve ser iniciada. Isso pode ser útil se quisermos buscar por uma ocorrência específica da substring.

Comparando o método match() e o método test()

Além dos métodos mencionados anteriormente, o JavaScript também oferece o método match() e o método test() como opções para verificar se uma string contém outra. Esses métodos são especialmente úteis quando precisamos buscar substrings baseadas em padrões de expressões regulares.

O método match() é aplicado diretamente à string que desejamos verificar e recebe como argumento uma expressão regular. Ele retorna um array contendo todas as correspondências encontradas ou null se nenhuma correspondência for encontrada.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

        let str = "Uma string de exemplo";
        let regex = /exemplo/g;

        let result = str.match(regex);

        if (result !== null) {
            console.log("A string contém a substring!");
        } else {
            console.log("A string não contém a substring.");
        }
    

Nesse exemplo, utilizamos o método match() para buscar todas as ocorrências da expressão regular `/exemplo/g` na string “Uma string de exemplo”. Se o método encontrar correspondências, o array contendo as correspondências será retornado. Caso contrário, será retornado null.

Por outro lado, o método test() é um método aplicado diretamente em uma expressão regular e recebe como argumento a string que desejamos verificar. Ele retorna true se a substring estiver presente na string ou false caso contrário.


        let str = "Uma string de exemplo";
        let regex = /exemplo/;

        if (regex.test(str)) {
            console.log("A string contém a substring!");
        } else {
            console.log("A string não contém a substring.");
        }
    

Nesse exemplo, utilizamos o método test() para verificar se a expressão regular `/exemplo/` está presente na string “Uma string de exemplo”. Se a substring for encontrada, o método retorna true. Caso contrário, retorna false.

Ao comparar o método match() e o método test(), é importante considerar que o método match() retorna um array com todas as correspondências encontradas, enquanto o método test() retorna apenas um valor booleano indicando se a substring está presente ou não.

Em resumo, o JavaScript oferece várias opções para verificar se uma string contém outra. Tanto o método includes(), search() e indexOf() são úteis para buscar substrings exatas dentro de uma string. Já o método match() e o método test() são mais adequados para buscar padrões de expressões regulares em uma string.

Essas são apenas algumas das muitas possibilidades que o JavaScript nos proporciona ao trabalharmos com strings. O importante é entender cada método e escolher o mais adequado para cada situação. Esperamos que este artigo tenha ajudado você a compreender melhor como verificar se uma string contém outra em JavaScript.

A Awari é a melhor plataforma para aprender sobre programação no Brasil.

Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.

Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

Sobre o autor

A melhor plataforma para aprender tecnologia no Brasil

A Awari é a melhor maneira de aprender tecnologia no Brasil.
Faça parte e tenha acesso a cursos com aulas ao vivo e mentorias individuais com os melhores profissionais do mercado.