当前位置: 首页> 函数类别大全> preg_replace_callback

preg_replace_callback

执行一个正则表达式搜索并且使用一个回调进行替换
名称:preg_replace_callback
分类:正则处理PCRE
所属语言:php
一句话介绍:给定表达式和回调,返回字符串,其中表达式的所有匹配项都被替换为回调函数返回的子字符串。

实例

计算句子中所有单词的字母数:

<span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token keyword">function</span> <span class="token function-definition function">countLetters</span><span class="token punctuation">(</span><span class="token variable">$matches</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  <span class="token keyword">return</span> <span class="token variable">$matches</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token operator">.</span> <span class="token string single-quoted-string">'('</span> <span class="token operator">.</span> <span class="token function">strlen</span><span class="token punctuation">(</span><span class="token variable">$matches</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token operator">.</span> <span class="token string single-quoted-string">')'</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token variable">$input</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"Welcome to W3School.com.cn!"</span><span class="token punctuation">;</span>
<span class="token variable">$pattern</span> <span class="token operator">=</span> <span class="token string single-quoted-string">'/[a-z0-9\.]+/i'</span><span class="token punctuation">;</span>
<span class="token variable">$result</span> <span class="token operator">=</span> <span class="token function">preg_replace_callback</span><span class="token punctuation">(</span><span class="token variable">$pattern</span><span class="token punctuation">,</span> <span class="token string single-quoted-string">'countLetters'</span><span class="token punctuation">,</span> <span class="token variable">$input</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token variable">$result</span><span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

亲自试一试

同类函数
  • 执行正则表达式搜索并使用回调替换 preg_replace_callback_array

    preg_replace_callback_array

    执行正则表达式搜索并使用回调替换
  • 返回最后一个PCRE正则执行产生的错误代码 preg_last_error

    preg_last_error

    返回最后一个PCRE正则执行产生的错误代
  • 返回匹配模式的数组条目 preg_grep

    preg_grep

    返回匹配模式的数组条目
  • 返回上一次PCRE正则表达式执行的错误消息 preg_last_error_msg

    preg_last_error_msg

    返回上一次PCRE正则表达式执行的错误消
  • 转义正则表达式字符 preg_quote

    preg_quote

    转义正则表达式字符
  • 执行正则表达式搜索和替换 preg_filter

    preg_filter

    执行正则表达式搜索和替换
  • 通过一个正则表达式分隔字符串 preg_split

    preg_split

    通过一个正则表达式分隔字符串
  • 执行全局正则表达式匹配 preg_match_all

    preg_match_all

    执行全局正则表达式匹配
热门文章