php正则preg_replace_callback函数用法实例


Posted in PHP onJune 01, 2015

本文实例讲述了php正则preg_replace_callback函数的用法。分享给大家供大家参考。具体实现方法如下:

php正则表达式功能强大,本范例演示了preg_replace_callback函数的用法

// Define a dummy text, for testing...
$Text = "Title: Hello world!\n";
$Text .= "Author: Jonas\n";
$Text .= "This is a example message!\n\n";
$Text .= "Title: Entry 2\n";
$Text .= "Author: Sonja\n";
$Text .= "Hello world, what's up!\n";
// This function will replace specific matches
// into a new form
function RewriteText($Match){
  // Entire matched section: 
  // --> /.../
  $EntireSection = $Match[0];
  // --> "\nTitle: Hello world!"
  // Key 
  // --> ([a-z0-9]+)
  $Key      = $Match[1];
  // --> "Title"
  // Value 
  // --> ([^\n\r]+)
  $Value    = $Match[2];
  // --> "Hello world!"
  // Add some bold (<b>) tags to around the key to
  return '<b>' . $Key . '</b>: ' . $Value;
}
// The regular expression will extract and pass all "key: value" pairs to
// the "RewriteText" function that is definied above
$NewText = preg_replace_callback('/[\r\n]([a-z0-9]+): ([^\n\r]+)/i', "RewriteText", $Text);
// Print the new modified text
print $NewText;

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php后台程序与Javascript的两种交互方式
Oct 25 PHP
php生成zip压缩文件的方法详解
Jun 09 PHP
生成随机字符串和验证码的类的PHP实例
Dec 24 PHP
新浪SAE云平台下使用codeigniter的数据库配置
Jun 12 PHP
codeigniter中view通过循环显示数组数据的方法
Mar 20 PHP
php调整服务器时间的方法
Apr 03 PHP
php自定义类fsocket模拟post或get请求的方法
Jul 31 PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 PHP
php读取XML的常见方法实例总结
Apr 25 PHP
Yii2使用表单上传文件的实例代码
Aug 03 PHP
如何在PHP环境中使用ProtoBuf数据格式
Jun 19 PHP
php实现读取和写入tab分割的文件
Jun 01 #PHP
php从文件夹随机读取文件的方法
Jun 01 #PHP
php计算整个目录大小的方法
Jun 01 #PHP
php获取系统变量方法小结
May 29 #PHP
typecho插件编写教程(六):调用接口
May 28 #PHP
PHP cURL初始化和执行方法入门级代码
May 28 #PHP
php支持中文字符串分割的函数
May 28 #PHP
You might like
php 数组的一个悲剧?
2011/05/11 PHP
php获取发送给用户的header信息的方法
2015/03/16 PHP
php类常量用法实例分析
2015/07/09 PHP
php中访问修饰符的知识点总结
2019/01/27 PHP
JS 文件大小判断的实现代码
2010/04/07 Javascript
JavaScript设计模式之外观模式实例
2014/10/10 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
JavaScript常用数组算法小结
2016/02/13 Javascript
bootstrap模态框消失问题的解决方法
2016/12/02 Javascript
Bootstrap导航条鼠标悬停下拉菜单
2017/01/04 Javascript
javascript获取以及设置光标位置
2017/02/16 Javascript
Vue.js -- 过滤器使用总结
2017/02/18 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
使用typescript开发angular模块并发布npm包
2018/04/19 Javascript
vue系列之requireJs中引入vue-router的方法
2018/07/18 Javascript
JQuery特殊效果和链式调用操作示例
2019/05/13 jQuery
[02:31]《DAC最前线》之选手酒店现场花絮
2015/01/30 DOTA
python有证书的加密解密实现方法
2014/11/19 Python
python中引用与复制用法实例分析
2015/06/04 Python
改进Django中的表单的简单方法
2015/07/17 Python
使用Python的Twisted框架编写非阻塞程序的代码示例
2016/05/25 Python
Python生成器定义与简单用法实例分析
2018/04/30 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
Python实现的逻辑回归算法示例【附测试csv文件下载】
2018/12/28 Python
对python多线程SSH登录并发脚本详解
2019/02/14 Python
简单了解python的一些位运算技巧
2019/07/13 Python
详解django中Template语言
2020/02/22 Python
Python pymsql模块的使用
2020/09/07 Python
公司会计岗位职责
2014/02/13 职场文书
受资助学生感谢信
2015/01/21 职场文书
年终奖金发放管理制度,中小企业适用,拿去救急吧!
2019/07/12 职场文书
​(迎国庆)作文之我爱我的祖国
2019/09/19 职场文书
导游词之神仙居景区
2019/11/15 职场文书
Python 制作自动化翻译工具
2021/04/25 Python