PHP preg_replace_callback_array()-Funktion

PHP 正则表达式(PCRE)PHP Reguläre Ausdrücke (PCRE)

Die Funktion preg_replace_callback_array() führt eine Suche mit einem regulären Ausdruck durch und ersetzt mithilfe einer Callback-Funktion.

Diese Funktion wird in PHP 7+ unterstützt.

Syntax

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

Die Funktion ist ähnlich wiepreg_replace_callback(), aber sie ersetzt durch Aufrufen der Callback-Funktion basierend auf jedem Muster-Treffer.

Parameterbeschreibung:

  • $patterns_and_callbacks: Assoziatives Array, Schlüssel (Muster) => Wert (Callback-Funktion)

  • $subject: Die Zeichenkette oder das Array, die/das durchsucht und ersetzt werden soll.

  • $limit: Optional, die maximale Anzahl von Ersetzungen für jedes Muster, standardmäßig -1 (kein Limit, alle Treffer ersetzen).

  • $count: Optional, gibt die Anzahl der Ersetzungen an.

Rückgabewert

Wenn subject ein Array ist, wird ein Array zurückgegeben; andernfalls wird eine Zeichenkette zurückgegeben. Bei einem Fehler wird NULL zurückgegeben.

Wenn eine Übereinstimmung gefunden wird, wird die ersetzte Zielzeichenkette (oder ein Array von Zeichenketten) zurückgegeben; andernfalls wird subject unverändert zurückgegeben.

Beispiele

Beispiel 1

<?php $subject = 'Aaaaaa Bbb'; preg_replace_callback_array( [ '~[a]+~i' => function ($match) { echo strlen($match[0]), ' Übereinstimmungen für "a" gefunden', PHP_EOL; }, '~[b]+~i' => function ($match) { echo strlen($match[0]), ' Übereinstimmungen für "b" gefunden', PHP_EOL; } ], $subject ); ?>

Das Ausführungsergebnis ist wie folgt:

6 matches for "a" found
3 matches for "b" found

PHP 正则表达式(PCRE)PHP Reguläre Ausdrücke (PCRE)

Andere Erweiterungen