Como usar a função str.contains do Python?
Como verificar se uma string em Python contém outra string
Se você precisa verificar se uma string contém outra string, o Python oferece um operador de associação chamado “in”. Este é o método recomendado para confirmar a existência de uma substring em uma string.
Para ilustrar como utilizar o operador “in”, vamos considerar o seguinte exemplo:
Neste exemplo, a variável “raw_file_content” representa a string original e a variável “substring” representa a substring que queremos procurar. Utilizando o operador “in”, verificamos se a substring está contida na string original. Caso esteja, exibimos uma mensagem indicando que a string contém a substring. Caso contrário, exibimos uma mensagem informando que a string não contém a substring.
É importante ressaltar que o operador “in” retorna um valor booleano: “True” se a substring for encontrada e “False” se não for encontrada. Isso nos permite utilizar essa informação em estruturas condicionais para tomar decisões em nosso código.
Além disso, também podemos utilizar o operador “not in” para verificar se a string não contém uma determinada substring. O uso do “not in” é semelhante ao uso do “in”, porém o resultado é negado. Veja o exemplo abaixo:
Neste caso, o bloco de código será executado caso a substring não esteja contida na string original.
Generalizando a verificação removendo a sensibilidade à caixa
Em muitos casos, pode ser necessário realizar a verificação sem considerar a sensibilidade à caixa (maiúsculas ou minúsculas). Felizmente, o Python fornece métodos para tratar essa situação.
Se quisermos fazer uma verificação case-insensitive, podemos converter tanto a string original quanto a substring para letras minúsculas (ou maiúsculas) antes de realizar a verificação. Veja o exemplo abaixo:
Neste exemplo, utilizamos o método “lower()” para converter tanto a string original quanto a substring para letras minúsculas antes de realizar a verificação. Isso nos permite realizar uma verificação sem considerar a diferença entre maiúsculas e minúsculas.
Aprendendo mais sobre a substring
Em alguns casos, podemos precisar obter informações adicionais sobre a substring encontrada na string original. Felizmente, o Python possui vários métodos que nos ajudam a lidar com essa situação.
Por exemplo, podemos utilizar o método “find()” para obter o índice (posição) da primeira ocorrência da substring na string original. Veja o exemplo abaixo:
Neste exemplo, utilizamos o método “find()” para encontrar a primeira ocorrência da substring na string original. Caso a substring seja encontrada, o método retorna o índice (posição) onde a primeira ocorrência começa. Caso a substring não seja encontrada, o método retorna o valor -1. Utilizamos uma estrutura condicional para imprimir a mensagem adequada de acordo com o resultado da busca.
Além do método “find()”, o Python oferece outros métodos úteis para manipular substrings, como “count()”, “replace()”, “split()”, entre outros. Vale a pena explorar a documentação oficial do Python para conhecer todas as opções disponíveis.
Encontrando uma substring em uma coluna de um DataFrame do pandas
Se estivermos trabalhando com dados tabulares utilizando o pandas, podemos utilizar métodos específicos da biblioteca para encontrar substrings em colunas de um DataFrame.
Por exemplo, suponha que tenhamos um DataFrame chamado “data” que possui uma coluna chamada “texto”. Para encontrar substrings nessa coluna, podemos utilizar o método “str.contains()” do pandas. Veja o exemplo abaixo:
Neste exemplo, criamos um DataFrame chamado “data” com uma coluna chamada “texto”. Utilizamos o método “str.contains()” para verificar se a substring está presente em cada elemento da coluna “texto”. Em seguida, utilizamos o resultado da verificação para filtrar o DataFrame e obter apenas as linhas que contêm a substring. Por fim, imprimimos o DataFrame resultante.
Essas são algumas maneiras de verificar se uma string em Python contém uma determinada substring. Lembre-se de que o operador “in” é a forma mais Pythonica de realizar essa verificação, mas o Python também oferece outros métodos e recursos para lidar com diferentes situações.