W3docs

preg_quote

En PHP, preg_quote() escapa los caracteres especiales de una cadena para usarlos de forma segura en patrones de expresiones regulares.

preg_quote

Introducción

En PHP, las expresiones regulares son una herramienta esencial para manipular y buscar cadenas. La función preg_quote() es una de las muchas funciones que PHP ofrece para trabajar con expresiones regulares. Escapa los caracteres especiales de una cadena para que puedan usarse de forma segura dentro de un patrón regex. Este artículo cubre la función preg_quote() en detalle y muestra cómo utilizarla de manera efectiva.

Comprender la función preg_quote()

La función preg_quote() en PHP escapa los caracteres de expresión regular en una cadena y devuelve la cadena entrecomillada. La sintaxis para usar la función preg_quote() es la siguiente:

Comprender la función preg_quote()

preg_quote($str, $delimiter);

Aquí, $str es la cadena que se va a citar, y $delimiter es un parámetro opcional que especifica el carácter delimitador a utilizar. Si se especifica $delimiter, también será escapado. Tenga en cuenta que la función siempre devuelve una cadena. En PHP 8.1+, pasar un valor no string a $str genera una advertencia de deprecación.

Ejemplo de uso

Veamos un ejemplo para entender el uso de la función preg_quote() en PHP:

Ejemplo de uso de preg_quote() en PHP

<?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.';
}

En el ejemplo anterior, tomamos una cadena y usamos preg_quote() para escapar cualquier metacarácter regex que pueda contener. Luego incrustamos la cadena escapada en un patrón regex. Esto garantiza que caracteres como ^, $ o . se traten como caracteres literales en lugar de operadores regex. Si se encuentra la coincidencia, imprimimos "Match found.". De lo contrario, imprimimos "No match found."

Conclusión

La función preg_quote() es una forma fiable de escapar caracteres especiales en una cadena para usarlos de forma segura dentro de expresiones regulares. Es especialmente útil cuando se construyen patrones de forma dinámica a partir de entradas del usuario o datos externos. Al usar preg_quote(), los desarrolladores pueden evitar comportamientos no deseados en las expresiones regulares y garantizar que los patrones coincidan exactamente como se pretende. Esperamos que este resumen aclare cómo usar preg_quote() en sus proyectos PHP.

Práctica

Práctica
¿Qué hace la función preg_quote() en PHP?
¿Qué hace la función preg_quote() en PHP?
Was this page helpful?