RegexIterator::__construct

(PHP 5 >= 5.2.0, PHP 7)

RegexIterator::__construct新しい RegexIterator を作成する

説明

public RegexIterator::__construct ( Iterator $iterator , string $regex [, int $mode = self::MATCH [, int $flags = 0 [, int $preg_flags = 0 ]]] )

新しい RegexIterator を作成します。これは、正規表現を使って Iterator をフィルタリングします。

パラメータ

iterator

この正規表現フィルタを適用するイテレータ。

regex

マッチさせる正規表現。

mode

操作モード。モードの一覧は RegexIterator::setMode() を参照ください。

flags

特殊なフラグ。フラグの一覧は RegexIterator::setFlags() を参照ください。

preg_flags

正規表現フラグ。これらのフラグは操作モードに依存します。

RegexIterator preg_flags
操作モード 使用可能なフラグ
RegexIterator::ALL_MATCHES preg_match_all() を参照ください。
RegexIterator::GET_MATCH preg_match() を参照ください。
RegexIterator::MATCH preg_match() を参照ください。
RegexIterator::REPLACE なし。
RegexIterator::SPLIT preg_split() を参照ください。

エラー / 例外

引数 regex が無効な場合に InvalidArgumentException をスローします。

例1 RegexIterator::__construct() の例

'test' で始まるすべての文字列を取り出す新しい RegexIterator を作成します。

<?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

参考