array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'recursiveregexiterator.construct.php', 1 => 'RecursiveRegexIterator::__construct', ), 'up' => array ( 0 => 'class.recursiveregexiterator.php', 1 => 'RecursiveRegexIterator', ), 'prev' => array ( 0 => 'class.recursiveregexiterator.php', 1 => 'RecursiveRegexIterator', ), 'next' => array ( 0 => 'recursiveregexiterator.getchildren.php', 1 => 'RecursiveRegexIterator::getChildren', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/spl/recursiveregexiterator/construct.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
RecursiveRegexIterator::__construct — Crea un nuevo RecursiveRegexIterator
$iterator
,$pattern
,$mode
= RecursiveRegexIterator::MATCH,$flags
= 0,$pregFlags
= 0Crea un nuevo iterador de expresión regular.
iterator
El iterador recursivo al que se le va a aplicar el filtro regex.
pattern
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.
pregFlags
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