(PHP 5 >= 5.2.0, PHP 7, PHP 8)
RegexIterator::setMode — 设置操作模式
mode
操作模式。
可用的模式如下所示。这些模式的实际含义在 预定义常量 中描述。
值 | 常量 |
---|---|
0 | RegexIterator::MATCH |
1 | RegexIterator::GET_MATCH |
2 | RegexIterator::ALL_MATCHES |
3 | RegexIterator::SPLIT |
4 | RegexIterator::REPLACE |
不返回值。
示例 #1 RegexIterator::setMode() 示例
<?php
$test = array ('str1' => 'test 1', 'test str2' => 'another test', 'str3' => 'test 123');
$arrayIterator = new ArrayIterator($test);
// 筛选以 'test ' 开头,后跟一个或多个数字的所有内容。
$regexIterator = new RegexIterator($arrayIterator, '/^test (\d+)/');
// 操作模式:将实际值替换为匹配项
$regexIterator->setMode(RegexIterator::GET_MATCH);
foreach ($regexIterator as $key => $value) {
// 打印匹配的数字。
echo $key . ' => ' . $value[1] . PHP_EOL;
}
?>
上面的示例将输出类似以下内容
str1 => 1 str3 => 123