3 maneiras de verificar se uma string PHP contém outra

Publicados: 2022-02-13

Provavelmente a parte mais frustrante de escrever código PHP é descobrir se uma string PHP contém outra string. Mas não se preocupe – neste tutorial, vamos mostrar como é fácil identificar uma substring usando vários métodos. Além de apresentá-los, também vamos discutir seus prós e, claro, seus contras. Por favor, tenha em mente que há mais de um método de 'enraizar' substrings.




Índice

Algumas considerações se a string PHP contiver outra

O primeiro grande erro ao testar uma substring é usar o operador de comparação errado. Por exemplo, se você estiver usando != para verificar uma substring, poderá acabar com o que é chamado de falso positivo. Nesse caso, é melhor usar !==, que compara o tipo.

Se você está tendo problemas para descobrir qual operador usar em um determinado contexto, você pode consultar este tutorial PHP para obter informações detalhadas sobre operadores e suas funções. Você também encontrará exemplos de código explicados para o programador iniciante.

Como dissemos, existem diferentes métodos para descobrir se uma string contém uma palavra ou outra string. Até o momento, existem cinco métodos, mas apenas os três primeiros são rápidos.

  1. stripos () para diferenciar maiúsculas de minúsculas para verificar se uma string contém outra string.
  2. Regex para string em string
  3. strstr () para uma string em outra string.

1. Verificando uma substring usando a referência de string que diferencia maiúsculas de minúsculas stripos()

A maneira mais rápida e indolor de verificar se uma string contém outra é empregando a função stripos() que basicamente pesquisa se uma string contém uma determinada palavra. O que acontece é que a função retornará TRUE se a string contiver uma substring/palavra ou FALSE se a string não contiver nenhuma delas.




Para ajudá-lo a visualizar como stripos() funciona, aqui está um exemplo.

$first_string = “Sou 10 anos mais velho que você.”

$sought_word= “anos”

$caractere = “eu”




$targeted_substring = “10 anos”

If (strpos ($first_String, $sought_word) !== false {

echo 'Esta palavra “ '.$sought_word.'” está na string.';

}

(isso lhe dirá que os “anos” do mundo podem ser encontrados nesta string em particular)




if (stripos ($first_string, $character) !== false) {

echo 'Este caractere “ '.$character.' “pode ser encontrado nesta string em particular.';

}

(estas linhas lhe dirão que “I” pode ser encontrado na string dada)

if (strpos ($first_string, $ substring segmentada) !== false {




echo 'A substring alvo “ '.targeted_substring.'”pode ser encontrada nesta string.”

(estas linhas lhe dirão que a substring “5 years” pode ser encontrada na string).

if (strpos($first_string, $character) != false) {

echo 'Este caractere “ '.$character.' “aparece nesta string.”

} outro {

echo 'Este caractere “ '.$character.' “ não aparece nesta string.

(Estas linhas lhe dirão que o caractere “I” não pode ser encontrado nessa string específica.)

  • Relacionado: 5 melhores cursos online gratuitos de desenvolvimento Web
  • 5 melhores lugares para aprender web design

2.Regex para uma substring em uma string

Expressões regulares, também conhecidas como Regex, são mais adequadas para pesquisar padrões complexos em uma determinada substring.

Aqui está um exemplo de como pesquisar substrings, usando as funções definidas no exemplo anterior.

$first_string = “Sou 10 anos mais velho que você.”

$sought_word= “anos”

$caractere = “eu”

$targeted_substring = “10 anos”

If (preg_match('/years/', $first_string)) {

echo 'A palavra “ '.$sought_word.' “pode ser encontrado nesta string.';

}

(informa ao usuário que a palavra “years” pode ser encontrada nessa string)

if (preg_match('/I/', $first_string)) {

echo 'O caractere “'.$character.; “aparece nesta sequência”. ;

}

(diz que “I” aparece na sua string.)

If (preg_match('/10 anos/', $first_string)) {

echo 'Esta substring: '.$targeted_substring.' “aparece na string fornecida.'

}

(diz que a substring, definida como “10 anos” aparece na sua string declarada).

3. Funções Strstr() para encontrar substrings em strings

A função strstr() é bastante versátil, o que significa que pode ser usada para pesquisar substrings, caracteres e palavras dentro de uma string específica. O que ele faz é basicamente retornar apenas a parte que contém a primeira string, desde a primeira ocorrência da substring/palavra até o final. Aqui está um exemplo para ajudá-lo a descobrir como a função

trabalho.

$first_string = “Sou 10 anos mais velho que você.”

$sought_word= “anos”

$caractere = “eu”

$targeted_substring = “10 anos”

If (strstr($first_string, $sought_word) !==false) {

echo 'A palavra “ '.$sought_word.'” aparece na string.;

}

(diz que “years” aparece na string)

if (strstr($first_string, $character) !==false) {

echo 'O caractere” '$character.'” aparece na string fornecida.';

}

(diga ao usuário que o caractere “I” aparece na string)

if (strstr($first_string, $targeted_substring) !==false) {

echo 'A substring “'.$targeted_substring.; “ aparece na string.';

}

Conclusão

Aí está, pessoal – três maneiras simples de descobrir se a string que você está testando tem uma substring ou não. Novamente, tenha cuidado com os operadores e certifique-se de testar sua string usando mais de um método para evitar resultados falso-positivos.

Se você quiser aprender PHP ou qualquer outra linguagem, sugiro fazer o curso online de qualquer uma das principais plataformas de aprendizado online, como a Udemy, que oferece qualquer tipo de curso por um preço muito menor. Você pode ler detalhes completos sobre a Udemy. Você também pode verificar nossa página de cupom de desconto da Udemy para obter as ofertas mais recentes.

Se você gosta deste tutorial sobre métodos para verificar se a string PHP contém outra string, compartilhe-a. Quer mais dicas, siga whatvwant no Facebook, Twitter e YouTube.