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创建动态图像
Oct 09 PHP
站长助手-网站web在线管理程序 v1.0 下载
May 12 PHP
PHPLog php 程序调试追踪工具
Sep 09 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
PHP实现过滤掉非汉字字符只保留中文字符
Jun 04 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
PHP+JQuery+Ajax实现分页方法详解
Aug 06 PHP
基于PHP常用文件函数和目录函数整理
Aug 17 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
Jun 13 PHP
PDO::beginTransaction讲解
Jan 27 PHP
PDO::lastInsertId讲解
Jan 29 PHP
Laravel框架实现多数据库连接操作详解
Jul 12 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代码优化的53个细节
2014/03/03 PHP
php中http与https跨域共享session的解决方法
2014/12/20 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
PHP使用POP3读取邮箱接收邮件的示例代码
2020/07/08 PHP
[原创]保存的js无法执行的解决办法
2007/02/25 Javascript
Javascript 各浏览器的 Javascript 效率对比
2008/01/23 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
模拟一个类似百度google的模糊搜索下拉列表
2014/04/15 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
Vue2单一事件管理组件通信
2017/05/09 Javascript
使用jQuery实现动态添加小广告
2017/07/11 jQuery
JavaScript数组排序reverse()和sort()方法详解
2017/12/24 Javascript
JS加密插件CryptoJS实现AES加密操作示例
2018/08/16 Javascript
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
[52:36]VGJ.S vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
2018/10/11 Python
python查看模块,对象的函数方法
2018/10/16 Python
python自动发送测试报告邮件功能的实现
2019/01/22 Python
谈一谈基于python的面向对象编程基础
2019/05/21 Python
python实现五子棋人机对战游戏
2020/03/25 Python
Flask框架学习笔记之使用Flask实现表单开发详解
2019/08/12 Python
使用Pycharm分段执行代码
2020/04/15 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
关于HTML5的22个初级技巧(图文教程)
2012/06/21 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
2014/05/03 HTML / CSS
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
武汉瑞得软件笔试题
2015/10/27 面试题
班组长的岗位职责
2013/12/09 职场文书
二手房购房意向书范本
2014/04/01 职场文书
三好学生评语大全
2014/12/29 职场文书
先进典型发言材料
2014/12/30 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
考试后的感想
2015/08/07 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python