Como usar a função preg_match_all () em PHP

Como Usar A Funcao Preg Match All Em Php



preg_match_all() é uma função interna do PHP usada para corresponder ao padrão específico em uma string. Você pode usar esta função para realizar correspondências de expressões regulares e extrair dados de strings. Ele pode economizar tempo e esforço nos casos em que você precisa pesquisar várias ocorrências de um padrão e é amplamente utilizado em aplicações de análise de texto e extração de dados do PHP.

Sintaxe

A seguir está a sintaxe para usar o preg_match_all em PHP:







preg_match_all ( padrão , entrada , partidas , bandeiras , desvio )

O preg_match_all aceita os seguintes parâmetros, três são parâmetros obrigatórios e dois são opcionais:



  • padrão : É o parâmetro obrigatório; ele contém a expressão regular que precisa ser pesquisada.
  • entrada : O segundo também é um parâmetro obrigatório, pois é a string na qual a pesquisa é realizada.
  • partidas : Armazena a saída na matriz contendo todas as correspondências.
  • bandeiras : descreve como a matriz de pesquisa ou correspondências é estruturada. Modifica o comportamento da busca de função. Os seguintes sinalizadores podem ser usados:
  • desvio : É o parâmetro opcional que especifica a posição inicial da busca.
Bandeira Descrição
PREG_PATTERN_ORDER A matriz resultante tem todas as correspondências de uma matriz para cada elemento da expressão regular.
PREG_SET_ORDER Cada elemento da matriz de correspondências contém correspondências de todos os agrupamentos para uma das correspondências encontradas na string.
PREG_OFFSET_CAPTURE Ele retorna as correspondências com suas posições de deslocamento de byte correspondentes na string de assunto.
PREG_UNMATCHED_AS_NULL Os padrões não correspondentes serão relatados como NULL.

Exemplo 1

Considere o seguinte exemplo de uso do preg_match_all() função em PHP. Neste código, estamos procurando a palavra Linux na corda. Esta função gera o número de correspondências encontradas na palavra Linux :





$ string = 'Olá entusiastas do Linux, Bem-vindo ao LinuxHint!' ;

$padrão = '/Linux/' ;

$correspondências = variedade ( ) ;

preg_match_all ( $padrão , $ string , $correspondências ) ;

print_r ( $correspondências [ 0 ] ) ;

?>





Exemplo 2

Neste código de exemplo, estamos procurando a palavra E na string. O i minúsculo é usado para tornar a pesquisa sem distinção entre maiúsculas e minúsculas. Ele retornará todas as ocorrências de string da palavra E ou e:



$ string = 'BEM-VINDO AOS EUA.' ;

$padrãoRex = '/E/i' ;

$matchFound = preg_match_all ( $padrãoRex , $ string , $correspondências ) ;

se ( $matchFound ) {

eco '
'  ; 

print_r ( $correspondências ) ;

}

?>



Exemplo 3

Se o padrão que você está procurando não estiver presente na string, a função retornará false, indicando um erro. Para lidar com isso, você pode usar instruções if-else. Se o padrão não for encontrado, você pode imprimir uma mensagem usando a instrução else para informar ao usuário que o padrão não foi encontrado.



$ string = 'PHP é uma linguagem de script popular' ;

$padrãoRex = '/urina/' ;

$matchFound = preg_match_all ( $padrãoRex , $ string , $correspondências ) ;

se ( $matchFound ) {

eco '
'  ; 

eco 'Combinação encontrada.' ;

print_r ( $correspondências ) ;

} outro {

eco 'Nenhuma combinação encontrada.' ;

}

?>

Observação : O tag no código acima é usada para formatar a saída.

Conclusão

As expressões regulares são uma ferramenta poderosa para pesquisar e manipular texto em PHP. O preg_match_all() function é uma função PHP integrada que é usada para executar uma correspondência de expressão regular em uma string e recuperar todas as ocorrências do padrão e, se o padrão não existir, retornará false. Entendendo o preg_match_all() A função ajudará os usuários a lidar e processar melhor os dados de texto em PHP.