preg_replace_callback_array

(PHP 7)

preg_replace_callback_arrayPerform a regular expression search and replace using callbacks

说明

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

The behavior of this function is similar to preg_replace_callback(), except that callbacks are executed on a per-pattern basis.

参数

patterns_and_callbacks

An associative array mapping patterns (keys) to callbacks (values).

subject

The string or an array with strings to search and replace.

limit

The maximum possible replacements for each pattern in each subject string. Defaults to -1 (no limit).

count

If specified, this variable will be filled with the number of replacements done.

返回值

preg_replace_callback_array() returns an array if the subject parameter is an array, or a string otherwise. On errors the return value is NULL

If matches are found, the new subject will be returned, otherwise subject will be returned unchanged.

范例

Example #1 preg_replace_callback_array() example

<?php
$subject 
'Aaaaaa Bbb';

preg_replace_callback_array(
    [
        
'~[a]+~i' => function ($match) {
            echo 
strlen($match[0]), ' matches for "a" found'PHP_EOL;
        },
        
'~[b]+~i' => function ($match) {
            echo 
strlen($match[0]), ' matches for "b" found'PHP_EOL;
        }
    ],
    
$subject
);
?>

以上例程会输出:

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

参见

相关文章
php libevent 函数 set or reset callbacks for a buffered eventphp ldap 函数 single level searchphp 多字节字符串 函数 regular expression match for multibyte stringphp 多字节字符串 函数 perform a regular expression search and replace with multibyte support using a callbackphp 多字节字符串 函数 replace regular expression with multibyte supportphp 多字节字符串 函数 returns start point for next regular expression matchphp 多字节字符串 函数 retrieve the result from the last multibyte regular expression matchphp 多字节字符串 函数 setup string and regular expression for a multibyte regular expression matchphp 多字节字符串 函数 returns position and length of a matched part of the multibyte regular expression for a predefined multibyte stringphp 多字节字符串 函数 returns the matched part of a multibyte regular expressionphp 多字节字符串 函数 set start point of next regular expression matchphp 多字节字符串 函数 multibyte regular expression match for predefined multibyte stringphp 多字节字符串 函数 regular expression match with multibyte supportphp 多字节字符串 函数 replace regular expression with multibyte support ignoring casephp 多字节字符串 函数 regular expression match ignoring case with multibyte supportphp ncurses 函数 set new position and draw a horizontal line using an attributed character and max. n characters longphp ncurses 函数 start using standout attributephp pcre 函数 perform a regular expression search and replace using callbacksphp mnogosearch 函数 perform searchphp regexiterator returns the regular expression flags
关注编程学问公众号