PHP - Manual: RegexIterator::__construct
2025-10-24
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
RegexIterator::__construct — Create a new RegexIterator
$iterator,$pattern,$mode = RegexIterator::MATCH,$flags = 0,$pregFlags = 0Create a new RegexIterator which filters an Iterator using a regular expression.
iteratorThe iterator to apply this regex filter to.
patternThe regular expression to match.
modeOperation mode, see RegexIterator::setMode() for a list of modes.
flagsSpecial flags, see RegexIterator::setFlags() for a list of available flags.
pregFlagsThe regular expression flags. These flags depend on the operation mode parameter:
| operation mode | available flags |
|---|---|
| RegexIterator::ALL_MATCHES | See preg_match_all(). |
| RegexIterator::GET_MATCH | See preg_match(). |
| RegexIterator::MATCH | See preg_match(). |
| RegexIterator::REPLACE | none. |
| RegexIterator::SPLIT | See preg_split(). |
Throws an InvalidArgumentException if the pattern argument is invalid.
示例 #1 RegexIterator::__construct() example
Creates a new RegexIterator that filters all strings that start with 'test'.
<?php
$arrayIterator = new ArrayIterator(array('test 1', 'another test', 'test 123'));
$regexIterator = new RegexIterator($arrayIterator, '/^test/');
foreach ($regexIterator as $value) {
echo $value . "\n";
}
?>以上示例的输出类似于:
test 1 test 123
官方地址:https://www.php.net/manual/en/regexiterator.construct.php