Función PHP preg_split()

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

La función preg_split divide una cadena mediante una expresión regular.

Sintaxis

array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )

Divide la cadena dada mediante una expresión regular.

Descripción de parámetros:

  • $pattern: El patrón utilizado para buscar, en forma de cadena.

  • $subject: La cadena de entrada.

  • $limit: Opcional. Si se especifica, limita el número máximo de subcadenas resultantes a limit. La última subcadena devuelta contendrá todas las partes restantes. Si el valor de limit es -1, 0 o null, significa "sin límite". Como estándar de PHP, puedes usar null para omitir la configuración de flags.

  • $flags: Opcional. Puede ser cualquier combinación de las siguientes marcas (combinadas mediante el operador OR bit a bit |):

    • PREG_SPLIT_NO_EMPTY: Si se establece esta marca, preg_split() devolverá solo las partes no vacías después de la división.
    • PREG_SPLIT_DELIM_CAPTURE: Si se establece esta marca, las expresiones entre paréntesis en el patrón de división también se capturarán y devolverán.
    • PREG_SPLIT_OFFSET_CAPTURE: Si se establece esta marca, se agregará el desplazamiento de la cadena para cada coincidencia devuelta. Nota: Esto cambiará cada elemento del array devuelto, de modo que cada elemento se convierta en un array compuesto por el elemento 0 como la subcadena dividida y el elemento 1 como el desplazamiento de esa subcadena en subject.

Valor de retorno

Devuelve un array compuesto por las subcadenas obtenidas al dividir subject usando los límites de pattern.

Ejemplos

Obtener partes de la cadena de búsqueda

<?php //Divide la frase usando comas o espacios (incluyendo " ", \r, \t, \n, \f) $keywords = preg_split("/[\s,]+/", "hypertext language, programming"); print_r($keywords); ?>

El resultado de la ejecución se muestra a continuación:

Array
(
    [0] => hypertext
    [1] => language
    [2] => programming
)

Dividir una cadena en los caracteres que la componen

<?php $str = 'ejemplo'; $chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY); print_r($chars); ?>

El resultado de la ejecución se muestra a continuación:

Array
(
    [0] => r
    [1] => u
    [2] => n
    [3] => o
    [4] => o
    [5] => b
)

Dividir una cadena y obtener el desplazamiento de cada parte

<?php $str = 'hypertext language programming'; $chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE); print_r($chars); ?>

El resultado de la ejecución se muestra a continuación:

Array
(
    [0] => Array
        (
            [0] => hypertext
            [1] => 0
        )

    [1] => Array
        (
            [0] => language
            [1] => 10
        )

    [2] => Array
        (
            [0] => programming
            [1] => 19
        )

)

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

Otras extensiones