The RegexIterator class
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
简介
This iterator can be used to filter another iterator based on a regular expression.
类摘要
class RegexIterator
extends
FilterIterator
{
/* 常量 */
/* 属性 */
/* 方法 */
public __construct(
Iterator
string
int
int
int
)
Iterator
$iterator
,string
$pattern
,int
$mode
= RegexIterator::MATCH,int
$flags
= 0,int
$pregFlags
= 0)
/* 继承的方法 */
}预定义常量
RegexIterator operation modes
RegexIterator::ALL_MATCHES
-
Return all matches for the current entry (see preg_match_all()).
RegexIterator::GET_MATCH
-
Return the first match for the current entry (see preg_match()).
RegexIterator::MATCH
-
Only execute match (filter) for the current entry (see preg_match()).
RegexIterator::REPLACE
-
Replace the current entry (see preg_replace(); Not fully implemented yet)
RegexIterator::SPLIT
-
Returns the split values for the current entry (see preg_split()).
RegexIterator Flags
RegexIterator::USE_KEY
-
Special flag: Match the entry key instead of the entry value.
属性
- replacement
目录
- RegexIterator::accept — Get accept status
- RegexIterator::__construct — Create a new RegexIterator
- RegexIterator::getFlags — Get flags
- RegexIterator::getMode — Returns operation mode
- RegexIterator::getPregFlags — Returns the regular expression flags
- RegexIterator::getRegex — Returns current regular expression
- RegexIterator::setFlags — Sets the flags
- RegexIterator::setMode — Sets the operation mode
- RegexIterator::setPregFlags — Sets the regular expression flags

User Contributed Notes 1 note
jinmoku at hotmail dot com ¶
11 years ago
An exemple :
<?php
$a = new ArrayIterator(array('test1', 'test2', 'test3'));
$i = new RegexIterator($a, '/^(test)(\d+)/', RegexIterator::REPLACE);
$i->replacement = '$2:$1';
print_r(iterator_to_array($i));
/*
Array
(
[0] => 1:test
[1] => 2:test
[2] => 3:test
)
*/
?>