(PHP 5 >= 5.2.0, PHP 7)
RecursiveRegexIterator::__construct — Crea un nuevo RecursiveRegexIterator
$iterator
, string $regex
[, int $mode
= self::MATCH
[, int $flags
= 0
[, int $preg_flags
= 0
]]] )Crea un nuevo iterador de expresión regular.
iterator
El iterador recursivo al que se le va a aplicar el filtro regex.
regex
La expresión regular a coincidir.
mode
Modo de operación, véase RegexIterator::setMode() para una lista de todos los modos.
flags
Flags especiales, véase RegexIterator::setFlags() para una lista de todas las flags disponibles.
preg_flags
Las flags de expresión regular. De estas flags depende el parámetro de modo de funcionamiento.
Modo de operación | flags disponibles |
---|---|
RecursiveRegexIterator::ALL_MATCHES | Véase preg_match_all(). |
RecursiveRegexIterator::GET_MATCH | Véase preg_match(). |
RecursiveRegexIterator::MATCH | Véase preg_match(). |
RecursiveRegexIterator::REPLACE | nada. |
RecursiveRegexIterator::SPLIT | Véase preg_split(). |
Ejemplo #1 Ejemplo de RecursiveRegexIterator::__construct()
Crear un nuevo RegexIterator que filtre todos los string que empiezan con 'test'
<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
RecursiveRegexIterator::ALL_MATCHES);
foreach ($rRegexIterator as $key1 => $value1) {
if ($rRegexIterator->hasChildren()) {
// print all children
echo "Hijos: ";
foreach ($rRegexIterator->getChildren() as $key => $value) {
echo $value . " ";
}
echo "\n";
} else {
echo "No tiene hijos\n";
}
}
?>
El resultado del ejemplo sería algo similar a:
No tiene hijos Hijos: test4 test5