W3docs

preg_quote

Em PHP, a função preg_quote() escapa caracteres especiais em uma string para uso seguro em padrões de expressões regulares.

preg_quote

Introdução

Em PHP, as expressões regulares são uma ferramenta essencial para manipular e pesquisar strings. A função preg_quote() é uma das muitas funções que o PHP oferece para trabalhar com expressões regulares. Ela escapa caracteres especiais em uma string para que possam ser usados com segurança dentro de um padrão de regex. Este artigo aborda a função preg_quote() em detalhes e demonstra como usá-la de forma eficaz.

Entendendo a função preg_quote()

A função preg_quote() em PHP escapa os caracteres de expressão regular em uma string. Ela retorna a string entre aspas. A sintaxe para usar a função preg_quote() é a seguinte:

Entendendo a função preg_quote()

preg_quote($str, $delimiter);

Aqui, $str é a string a ser escapada, e $delimiter é um parâmetro opcional que especifica o caractere delimitador a ser usado. Se $delimiter for especificado, ele também será escapado. Observe que a função sempre retorna uma string. No PHP 8.1+, passar um valor não-string para $str aciona um aviso de depreciação.

Exemplo de Uso

Veja um exemplo para entender o uso da função preg_quote() em PHP:

Exemplo de uso do PHP preg_quote()

<?php

$user_input = 'This is a test';
$delimiter = '/';

// Quote the string to safely embed it in a regex pattern
$quoted_input = preg_quote($user_input, $delimiter);

// Build the pattern
$pattern = $delimiter . '^' . $quoted_input . '$' . $delimiter;

if (preg_match($pattern, $user_input)) {
  echo 'Match found.';
} else {
  echo 'No match found.';
}

No exemplo acima, recebemos uma string e usamos preg_quote() para escapar quaisquer metacaracteres de regex que ela possa conter. Em seguida, incorporamos a string escapada em um padrão de regex. Isso garante que caracteres como ^, $ ou . sejam tratados como caracteres literais em vez de operadores de regex. Se a correspondência for encontrada, imprimimos "Match found." Caso contrário, imprimimos "No match found."

Conclusão

A função preg_quote() é uma maneira confiável de escapar caracteres especiais em uma string para uso seguro em expressões regulares. É particularmente útil ao construir padrões dinamicamente a partir de entradas do usuário ou dados externos. Ao usar preg_quote(), os desenvolvedores podem evitar comportamentos inesperados do regex e garantir que os padrões correspondam exatamente ao pretendido. Esperamos que esta visão geral esclareça como usar preg_quote() em seus projetos PHP.

Prática

Prática
O que a função preg_quote() em PHP faz?
O que a função preg_quote() em PHP faz?
Was this page helpful?