En el siguiente post vamos a repasar la función de PHP preg_split() que tiene como funcionalidad o finalidad dividir un string mediante una expersión regular y convertir dicha cadena en un array.
Una función similar pero si usar expresiones regulares es str_split(). Otras funciones de PHP interesantes son:
Sintaxis de PHP preg_split()
Veamos la sintaxis extraída de su web oficial:
1 |
preg_split ($expresion_regular, $string_a_dividir [,$limite [,$flags]]); |
Repasemos los parámetros disponibles:
- $expresion_regular (Obligatorio): Expresión regular que usaremos para dividir la cadena.
- $string_a_dividir (Obligatorio): Cadena de texto que queremos dividir y convertir en array.
- $limite: Número de elementos en los que se dividirá la cadena, en el último elemento irá el resto de la cadena restante si procede. Por defecto su valor es -1, con valor 0 y -1 –> sin límite.
- flags: Puede tener los siguientes valores –> ‘PREG_SPLIT_NO_EMPTY‘ devolverá en el array los elementos no vacíos. Con ‘PREG_SPLIT_DELIM_CAPTURE‘ las expresiones entre paréntesis en el patrón delimitador serán capturadas y devueltas. Por último con ‘PREG_SPLIT_OFFSET_CAPTURE‘ se añade el índice (Posición) del valor dividido dentro de la cadena dividir.
Ejemplo de PHP preg_split()
Vayamos con este ejemplo de preg_split() y así ver su funcionamiento:
1 2 3 |
$frase = "Esta frase la vamos a dividir teniendo en cuenta los espacios en blanco"; $palabras = preg_split('/\s/', $frase, null, PREG_SPLIT_OFFSET_CAPTURE); print_r($palabras); |
Os comento el ejemplo superior:
- Tenemos en la variable $frase la cadena a dividir.
- Después dividimos la cadena fijándonos en los espacios en blanco como caracter de división. No ponemos límte de elementos en el array resultante e indicamos el índice (Posición) del valor dividido dentro de la cadena.
- Por último con print_r mostramos por pantalla los valores del array.