PHP正则表达式匹配替换与分割功能实例浅析


Posted in PHP onFebruary 04, 2017

本文实例讲述了PHP正则表达式匹配替换与分割功能。分享给大家供大家参考,具体如下:

正则表达式在PHP中的作用主要包括:分割、匹配、查找与替换。

匹配功能

preg_match_all 全部匹配函数

preg_match_all (string pattern,string subject,array matches[, int flags]);

对结果的排序使 $matches[0] 为全部模式匹配的数组。

用途:截取比较精确的内容,用于采集网页,分析文本等。

替换功能

preg_replace 正则替换函数

preg_replace(mixed pattern,mixed replacement,mixed subject[, int limit]);

通过正则表达式来替换相关内容。

① 替换内容可以是一个正则也可以是数组;
② 替换内容可以通过修正符 e 来解决替换执行内容。

用途:替换一些比较复杂的内容,也可以将内容进行转换。

分割功能

preg_split 正则切割

preg_split(string pattern,string subject[, int limit[, int flags]]);

通过正则表达式来切割相关内容,类似 explode 切割函数,但 explode 只能以一种方式进行切割。

实例演示

 匹配功能

以下为引用内容:

<?php
$str="标题:{title}内容:{content}";
$mode="/{(.*)}/U";
preg_match_all($mode,$str,$arr);
print_r($arr);
?>

输出:(在源文件中查看)

以下为引用内容:

Array
(
  [0] => Array
    (
      [0] => {title}
      [1] => {content}
    )
  [1] => Array
    (
      [0] => title
      [1] => content
    )
)
PHP 相关文章推荐
用PHP制作的意见反馈表源码
Mar 11 PHP
php google或baidu分页代码
Nov 26 PHP
php中使用Imagick实现图像直方图的实现代码
Aug 30 PHP
php实现mysql数据库操作类分享
Feb 14 PHP
PHP将session信息存储到数据库的类实例
Mar 04 PHP
PHP实现通过Luhn算法校验信用卡卡号是否有效
Mar 23 PHP
PHP页面输出搜索后跳转下一页的处理方法
Sep 30 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 PHP
php实现表单提交上传文件功能
May 28 PHP
PDO::commit讲解
Jan 27 PHP
laravel 关联关系遍历数组的例子
Oct 10 PHP
laravel框架分组控制器和分组路由实现方法示例
Jan 25 PHP
/etc/php-fpm.d/www.conf 配置注意事项
Feb 04 #PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
Feb 04 #PHP
Yii2实现多域名跨域同步登录退出
Feb 04 #PHP
PHP使用mysqli操作MySQL数据库的简单方法
Feb 04 #PHP
PHP使用preg_split()分割特殊字符(元字符等)的方法分析
Feb 04 #PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 #PHP
关于PHP内置的字符串处理函数详解
Feb 04 #PHP
You might like
php ftp文件上传函数(基础版)
2010/06/03 PHP
比较全面的PHP数组的使用方法小结
2010/09/23 PHP
Zend的Registry机制的使用说明
2013/05/02 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
PHP的curl函数的用法总结
2019/02/14 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
用JavaScript编写COM组件的步骤
2009/03/17 Javascript
mysql输出数据赋给js变量报unterminated string literal错误原因
2010/05/22 Javascript
jQuery实现随意改变div任意属性的名称和值(部分原生js实现)
2013/05/28 Javascript
JS实现从表格中动态删除指定行的方法
2015/03/31 Javascript
使用javascript插入样式
2016/03/14 Javascript
jQuery根据表单name获取值的方法
2016/05/24 Javascript
JS计算两个时间相差分钟数的方法示例
2018/01/10 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
使用vue2实现带地区编号和名称的省市县三级联动效果
2018/11/05 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
2020/09/04 Javascript
JS绘图Flot如何实现可选显示曲线图功能
2020/10/16 Javascript
Vue表单提交点击事件只允许点击一次的实例
2020/10/23 Javascript
原生JS生成指定位数的验证码
2020/10/28 Javascript
[01:13]这,就是刀塔
2014/07/16 DOTA
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
python 测试实现方法
2008/12/24 Python
浅谈django开发者模式中的autoreload是如何实现的
2017/08/18 Python
python opencv之分水岭算法示例
2018/02/24 Python
python实现NB-IoT模块远程控制
2018/06/20 Python
Python版名片管理系统
2018/11/30 Python
python中单下划线(_)和双下划线(__)的特殊用法
2019/08/29 Python
python3 循环读取excel文件并写入json操作
2020/07/14 Python
用Python制作mini翻译器的实现示例
2020/08/17 Python
详解如何通过H5(浏览器/WebView/其他)唤起本地app
2017/12/11 HTML / CSS
英国最大的电脑零售连锁店集团:PC World
2016/10/10 全球购物
万年牢教学反思
2014/02/15 职场文书
2014年高考决心书
2014/03/11 职场文书
如何签定毕业生就业协议书
2014/09/28 职场文书
高三物理教学反思
2016/02/20 职场文书
python实现简单的井字棋
2021/05/26 Python