目录
PHP 正则表达式小结
首页 后端开发 php教程 PHP 正则表达式小结_PHP教程

PHP 正则表达式小结_PHP教程

Jul 13, 2016 am 10:06 AM
ma php 函数 正则 实际的 表达式

PHP 正则表达式小结

   1.PHP中两个常用的正则函数

  a.preg_match 正则函数,以perl语言为基础

  语法:preg_match( mode,string subject,array matches)

  说明:mode参数---- 正则的模块,也就是正则表达式(语法)

  subject参数---- 正则的内容

  matches参数---- 正则的结果(获得一个数组的形式)

  b.ereg 正则函数,以POSIX基础(Unix、Script)

  语法:ereg(mode ,string subject, array regs)

  2.正则表达式中包括的元素

  a.原子(普通字符:a-z A-Z 0-9 、原子表、转义字符)

  b.元字符(有特殊功能的字符,如:# 、*)

  c.模式修正符(系统内置部分字符 i、m、S、U ...)

  3.正则表达式中的“原子”

  a.a-z A-Z _ 0-9 //最常见的字符

  b.(abc)(skd) //用圆括号包含起来的单元符号(一个整体)

  c.[abcs][^abd] //用方括号包含的原子表,原子表中的^代表排除或相反的内容

  d.转义字符

  \d 包含所有的数字[0-9]

  \D 除所有数字外[^0-9]

  \w 包含所有英文字符[a-z A-Z 0-9]

  \W 除所有英文字符外[^a-z A-Z 0-9]

  \s 回车,换行等

  ......

  注明: 圆括号 必须是整体才能匹配; 方括号 只要是其子集,都可以匹配(内容存在)

  4.正则表达式元字符

  * 匹配前一个内容的0次1次或多次

  . 匹配内容的0次1次或多次,但不包含回车换行(代指自己,任何内容)

  + 匹配前一个内容的1次或多次

  ? 匹配前一个内容的0次或1次

  | 选择匹配类似PHP中的| (因为这个运算符合是弱类型导致前面最为整体匹配,类似一个单词匹配)

  ^ 匹配字符串首部内容

  $ 匹配字符串尾部内容

  \b 匹配单词边界,边界可以是空格或者特殊符合(有单词分界符,类似空格)

  \B 匹配除带单词边界意外内容(无单词分界符)

  {m} 匹配前一个内容的重复次数为M次

  {m,} 匹配前一个内容的重复次数大于等于M次

  {m,n} 匹配前一个内容的重复次数M次到N次

  ( ) 合并整体匹配,并放入内存,可使用\\1 \\2…依次获取 (调用放入内存中的内容)

  5.运算顺序

  依然遵循从左到→右的运算规则

  优先级:

  ( ) 圆括号因为是内存处理所以最高

  * ? + { } 重复匹配内容其次

  ^ $ \b 边界处理第三

  | 条件处理第四

  最后按照运算顺序计算匹配

  6.模式修正符

  模式修正符是为正则表达式增强和补充的一个功能,使用在正则之外 例如:/ 正则 / U

  常用修正符:

  i 正则内容在匹配时候不区分大小写(默认是区分的)

  m 在匹配首内容或者尾内容时候采用多行识别匹配

  s 将转义回车取消是为单行匹配如. 匹配的时候

  x 忽略正则中的空白

  A 强制从头开始匹配

  D 强制$匹配尾部无任何内容 \n

  U 禁止贪婪匹配 只跟踪到最近的一个匹配符并结束, 常用在采集程序上的正则表达式

  7.匹配功能

  preg_match_all 全部匹配函数

  语法:preg_match_all ( string pattern, string subject, array matches [, int flags] )

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

  用途:截取比较详细的内容,采集网页,分析文本

  8.替换功能

  preg_replace 正则替换函数

  语法:preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )

  说明:通过正则表达式来替换相关内容,类似之前学过的str_replace字符串替换,但 功能要强于它

  提示:1、替换内容可以是一个正则也可以是数组正则

  2、替换内容可以通过修正符e来解决替换执行内容

  用途:替换一些比较复杂的内容上,也可以用于内容的转换上

  9.分割功能

  preg_split 正则切割

  语法:preg_split ( string pattern, string subject [, int limit [, int flags]] )

  说明:通过正则表达式来切割相关内容,类似之前学过的explode切割函数,但explode 只能按照一种方式切割有局限性。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/957532.htmlTechArticlePHP 正则表达式小结 1.PHP中两个常用的正则函数 a.preg_match 正则函数,以perl语言为基础 语法:preg_match( mode,string subject,array matches) 说明:mo...
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

CakePHP 项目配置 CakePHP 项目配置 Sep 10, 2024 pm 05:25 PM

在本章中,我们将了解CakePHP中的环境变量、常规配置、数据库配置和电子邮件配置。

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 Dec 24, 2024 pm 04:42 PM

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 日期和时间 CakePHP 日期和时间 Sep 10, 2024 pm 05:27 PM

为了在 cakephp4 中处理日期和时间,我们将使用可用的 FrozenTime 类。

CakePHP 文件上传 CakePHP 文件上传 Sep 10, 2024 pm 05:27 PM

为了进行文件上传,我们将使用表单助手。这是文件上传的示例。

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

在本章中,我们将学习以下与路由相关的主题?

讨论 CakePHP 讨论 CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

如何设置 Visual Studio Code (VS Code) 进行 PHP 开发 如何设置 Visual Studio Code (VS Code) 进行 PHP 开发 Dec 20, 2024 am 11:31 AM

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 创建验证器 CakePHP 创建验证器 Sep 10, 2024 pm 05:26 PM

可以通过在控制器中添加以下两行来创建验证器。

See all articles