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
)
*/
?>
RegexIterator クラス
(PHP 5 >= 5.2.0)
導入
このイテレータを使うと、別のイテレータを正規表現でフィルタリングすることができます。
クラス概要
RegexIterator
extends
FilterIterator
{
/* 定数 */
/* メソッド */
public RegexIterator::__construct
( Iterator $iterator
, string $regex
[, int $mode = self::MATCH
[, int $flags = 0
[, int $preg_flags = 0
]]] )
/* 継承したメソッド */
FilterIterator::__construct
( Iterator $iterator
)
}定義済み定数
RegexIterator の操作モード
- RegexIterator::ALL_MATCHES
-
現在のエントリにマッチするものをすべて返します (preg_match_all() を参照ください)。
- RegexIterator::GET_MATCH
-
現在のエントリに最初にマッチしたものを返します (preg_match() を参照ください)。
- RegexIterator::MATCH
-
現在のエントリに対するマッチ (フィルタ) のみを行います (preg_match() を参照ください)。
- RegexIterator::REPLACE
-
現在のエントリを置換します (preg_replace() を参照ください。まだ完全には実装されていません)。
- RegexIterator::SPLIT
-
現在のエントリで分割した値を返します (preg_split() を参照ください)。
RegexIterator のフラグ
- RegexIterator::USE_KEY
-
特別なフラグ: エントリの値ではなく、キーにマッチさせます。
目次
- RegexIterator::accept — 受け入れ状況を取得する
- RegexIterator::__construct — 新しい RegexIterator を作成する
- RegexIterator::getFlags — フラグを取得する
- RegexIterator::getMode — 操作モードを返す
- RegexIterator::getPregFlags — 正規表現フラグを返す
- RegexIterator::getRegex — 現在の正規表現を返す
- RegexIterator::setFlags — フラグを設定する
- RegexIterator::setMode — 操作モードを設定する
- RegexIterator::setPregFlags — 正規表現フラグを設定する
jinmoku at hotmail dot com
10-Dec-2010 12:28
