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基础知识:类与对象(4) 范围解析操作符(::)
Dec 13 PHP
提示Trying to clone an uncloneable object of class Imagic的解决
Oct 27 PHP
PHP-Fcgi下PHP的执行时间设置方法
Aug 02 PHP
PHP中使用imagick生成PSD文件缩略图教程
Jan 26 PHP
php实现转换html格式为文本格式的方法
May 16 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
如何利用预加载优化Laravel Model查询详解
Aug 11 PHP
PHP配置ZendOpcache插件加速
Feb 14 PHP
Laravel使用RabbitMQ的方法示例
Jun 18 PHP
解决Laravel blade模板转义html标签的问题
Sep 03 PHP
laravel 使用auth编写登录的方法
Sep 30 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 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针对伪静态的注入总结【附asp与Python相关代码】
2017/08/01 PHP
Javascript延迟执行实现方法(setTimeout)
2010/12/30 Javascript
Draggable Elements 元素拖拽功能实现代码
2011/03/30 Javascript
JavaScript简单实现网页回到顶部功能
2013/11/12 Javascript
jquery的clone方法应用于textarea和select的bug修复
2014/06/26 Javascript
javascript中数组的定义及使用实例
2015/01/21 Javascript
javascript鼠标滑动评分控件完整实例
2015/05/13 Javascript
JQuery异步加载PartialView的方法
2016/06/07 Javascript
BootStrap表单宽度设置方法
2017/03/10 Javascript
bootstrap table实现点击翻页功能 可记录上下页选中的行
2017/09/28 Javascript
微信小程序实现打开内置地图功能【附源码下载】
2017/12/07 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
17道题让你彻底理解JS中的类型转换
2019/08/08 Javascript
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
Python enumerate函数遍历数据对象组合过程解析
2019/12/11 Python
Python时间差中seconds和total_seconds的区别详解
2019/12/26 Python
完美解决python针对hdfs上传和下载的问题
2020/06/05 Python
解析python 中/ 和 % 和 //(地板除)
2020/06/28 Python
详解python tcp编程
2020/08/24 Python
Python爬取微信小程序Charles实现过程图解
2020/09/29 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
HTML5边玩边学(1)画布实现方法
2010/09/21 HTML / CSS
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
十一个高级MySql面试题
2014/10/06 面试题
举例说明类变量和实例变量的区别
2016/06/30 面试题
工业自动化专业毕业生推荐信
2013/11/18 职场文书
饲料采购员岗位职责
2013/12/19 职场文书
项目建议书怎么写
2014/05/15 职场文书
迟到检讨书2000字(精选篇)
2014/10/07 职场文书
千与千寻观后感
2015/06/04 职场文书
幼儿园2016年感恩节活动总结
2016/04/01 职场文书
Nginx如何配置根据路径转发详解
2022/07/23 Servers