PHP preg_replace_callback_array PCRE正则函数
-
定义和用法
preg_replace_callback_array - 执行正则表达式搜索并使用回调替换 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 -
语法
preg_replace_callback_array ( array $patterns_and_callbacks , mixed $subject [, int $limit = -1 [, int &$count ]] )
该函数的行为类似于preg_replace_callback(),不同之处在于回调是按模式执行的。 -
参数
参数 必需的 描述 patterns_and_callbacks 是 关联数组将模式(键)映射到回调(值)。 subject 是 字符串或包含要搜索和替换的字符串的数组。 limit 否 每个主题字符串中每个模式的最大可能替换数。 默认为-1(无限制)。 count 否 如果指定,此变量将填充完成的替换次数。 -
返回值
如果subject参数是一个数组,则preg_replace_callback_array()返回一个数组,否则返回一个字符串。 发生错误时,返回值为NULL,如果找到匹配项,则将返回新子串,否则将原样返回。 -
示例
尝试一下$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 );
-
相关函数
escapeshellcmd() - shell 元字符转义preg_replace_callback() - 执行一个正则表达式搜索并且使用一个回调进行替换preg_quote() - 转义正则表达式字符preg_replace() - 执行一个正则表达式的搜索和替换preg_last_error() - 返回最后一个PCRE正则执行产生的错误代码