English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 基礎チュートリアル

PHP 高級チュートリアル

PHP & MySQL

PHP リファレンスマニュアル

PHP preg_replace_callback_array() 関数の用法および例

PHP 正規表現(PCRE)

preg_replace_callback_array 関数は正規表現を検索し、コールバックを使用して置換を実行します。

この関数は PHP7+ バージョンサポート。

文法

mixed preg_replace_callback_array ( array $patterns_and_callbacks , mixed $subject [, int $limit =) -1 [, int &$count ]] )

関数に似ています preg_replace_callback()、ただし、各パターンのマッチングごとにコールバック関数が呼び出されます。

パラメータ説明:

  • $patterns_and_callbacks: 関連配列、key(パターン) => value(コールバック関数)

  • $subject: 検索および置換する文字列または配列です。

  • $limit: オプション、各パターンの最大置換回数、デフォルトは -1(制限なし、すべてのマッチングを完了するまで)。

  • $count: オプション、置換する回数を指定します。

返り値

subject が配列である場合、配列を返します。それ以外の場合、文字列を返します。エラーが発生した場合、NULL を返します。

マッチングが見つかった場合、置換後のターゲット文字列(または文字列配列)を返します。他の場合、subject は変更されずに返されます。

オンライン例

<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
    [
        '~[a]+~i' => function ($match) {
            echo strlen($match[0]), ' マッチングが見つかりました', PHP_EOL;
        },
        '~[b]+~i' => function ($match) {
            echo strlen($match[0]), ' マッチングが見つかりました', PHP_EOL;
        }
    ],
    $subject
);
?>

以下に実行結果を示します:

6 「a」のマッチングが見つかりました
3 「b」のマッチングが見つかりました

PHP 正規表現(PCRE)