Función PHP preg_replace()

PHP 正则表达式(PCRE)Expresiones regulares PHP (PCRE)

La función preg_replace realiza una búsqueda y reemplazo de expresiones regulares.

Sintaxis

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

Busca en subject las partes que coinciden con pattern y las reemplaza con replacement.

Descripción de parámetros:

  • $pattern: El patrón a buscar, puede ser una cadena o una matriz de cadenas.

  • $replacement: La cadena o matriz de cadenas utilizada para el reemplazo.

  • $subject: La cadena o matriz de cadenas de destino para buscar y reemplazar.

  • $limit: Opcional, el número máximo de reemplazos por cada patrón en cada cadena subject. El valor predeterminado es -1 (sin límite).

  • $count: Opcional, el número de reemplazos realizados.

Valor de retorno

Si subject es una matriz, preg_replace() devuelve una matriz; en otros casos, devuelve una cadena.

Si se encuentra una coincidencia, se devuelve el subject reemplazado; en otros casos, se devuelve el subject sin cambios. Si ocurre un error, se devuelve NULL.

Ejemplos

Reemplazar google por ejemplo

<?php $string = 'google 123, 456'; $pattern = '/(\w+) (\d+), (\d+)/i'; $replacement = 'ejemplo ${2},$3'; echo preg_replace($pattern, $replacement, $string); ?>

El resultado de la ejecución es el siguiente:

ejemplo 123,456

Eliminar caracteres de espacio

<?php $str = 'runo o b'; $str = preg_replace('/\s+/', '', $str); //cambiará a 'ejemplo' echo $str; ?>

El resultado de la ejecución es el siguiente:

ejemplo

Reemplazo de búsqueda basado en índices de array

<?php $string = 'The quick brown fox jumped over the lazy dog.'; $patterns = array(); $patterns[0] = '/quick/'; $patterns[1] = '/brown/'; $patterns[2] = '/fox/'; $replacements = array(); $replacements[2] = 'bear'; $replacements[1] = 'black'; $replacements[0] = 'slow'; echo preg_replace($patterns, $replacements, $string); ?>

El resultado de la ejecución es el siguiente:

The bear black slow jumped over the lazy dog.

Usar el parámetro count

<?php $count = 0; echo preg_replace(array('/\d/', '/\s/'), '*', 'xp 4 to', -1 , $count); echo $count; //3 ?>

El resultado de la ejecución es el siguiente:

xp***to
3

PHP 正则表达式(PCRE)Expresiones regulares PHP (PCRE)

Otras extensiones