PHP 8.4.2 Released!

RegexIterator::__construct

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

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

説明

public RegexIterator::__construct(
    Iterator $iterator,
    string $pattern,
    int $mode = RegexIterator::MATCH,
    int $flags = 0,
    int $pregFlags = 0
)

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

パラメータ

iterator

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

pattern

マッチさせる正規表現。

mode

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

flags

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

pregFlags

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

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

エラー / 例外

引数 pattern が無効な場合に 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

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top