PHP中正则表达式学习及应用

正则表达式元字符

* 匹配前一个内容的0次1次或多次 . 匹配内容的0次1次或多次,但不包含回车换行 + 匹配前一个内容的1次或多次 ?匹配前一个内容的0次或1次 | 选择匹配类似PHP中的| (因为这个运算符合是弱类型导致前面最为整体匹配) ^ 匹配字符串首部内容 $ 匹配字符串尾部内容 \b 匹配单词边界,边界可以是空格或者特殊符合 \B 匹配除带单词边界意外内容 {m} 匹配前一个内容的重复次数为M次 {m,} 匹配前一个内容的重复次数大于等于M次 {m,n} 匹配前一个内容的重复次数M次到N次 ( ) 合并整体匹配,并放入内存,可使用\1 \2…依次获取

按照运算顺序计算匹配

  1. ( ) 圆括号因为是内存处理所以最高
  2. * ? + { } 重复匹配内容其次
  3. ^ $ \b 边界处理第三
  4. | 条件处理第四

模式修正符

i 正则内容在匹配时候不区分大小写(默认是区分的) m 在匹配首内容或者尾内容时候采用多行识别匹配 S 将转义回车取消是为单行匹配如. 匹配的时候 x 忽略正则中的空白 A 强制从头开始匹配 D 强制$匹配尾部无任何内容 \n U 禁止贪婪匹配 只跟踪到最近的一个匹配符并结束, 常用在采集程序上的正则表达式

preg_match_all 全部匹配函数

preg_match_all ( string pattern, string subject, array matches [, int flags] )用途:截取比较详细的内容,采集网页,分析文本

preg_replace 正则替换函数

preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )通过正则表达式来替换相关内容,类似之前学过的str_replace字符串替换,但功能要强于它。

提示:1、替换内容可以是一个正则也可以是数组正则 2、替换内容可以通过修正符e来解决替换执行内容

preg_split 正则切割

preg_split ( string pattern, string subject [, int limit [, int flags]] )通过正则表达式来切割相关内容,类似之前学过的explode切割函数,但explode只能按照一种方式切割有局限性。

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2014-11-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏吾爱乐享

short s=1;s=s+1; short s=1;s+=1; 有区别么?? 如果有的话区别是什么?

16230
来自专栏黑泽君的专栏

c语言基础学习08_内存管理

============================================================================= 涉及...

37310
来自专栏Java 源码分析

并查集

​ 在我们需要判断某一些事物之间是否存在一定的关系的时候,我们最好的办法不是使用图而是使用并查集。因为我们关心的是他们之间是否有关系,而不是关心的他们到底...

36970
来自专栏技巅

Thrift之代码生成器Compiler原理及源码详细解析2

23950
来自专栏python读书笔记

《算法图解》NOTE 5 散列表1.散列表简介2.散列表的特点2.1优点2.2缺点3.应用

19750
来自专栏Coco的专栏

Javascript优化细节:短路表达式

15440
来自专栏Jackson0714

C#多线程之旅(4)——APM初探

417130
来自专栏码云1024

c++模板与泛型编程

31030
来自专栏玩转JavaEE

MongoDB固定集合

一般情况下我们创建的集合是没有大小的,可以一直往里边添加文档,这种集合可以动态增长,MongoDB中还有一种集合叫做固定集合,这种集合的大小是固定的,我可以在创...

34570
来自专栏深度学习与计算机视觉

Python实现队列数据结构

队列是一种应用广泛的数据结构,是一种只允许在一端进行插入操作,另一端进行删除操作的线性表,具有先进先出(First-In-First-Out)的原则。队列的两种...

25480

扫码关注云+社区

领取腾讯云代金券