正则表达式 Regular Express

标签(空格分隔): 正则表达式 PHP


认识正则表达式

正则表达式就是用某种模式去匹配一类字符串的一种公式。通俗来讲,就是一系列匹配规则。

PHP中的正则函数

  1. PCRE库提供的函数, 以 preg_ 为前缀命名。
  2. POSIX扩展提供的函数,以 ereg_ 为前缀命名。

组成

分隔符 表达式 修饰符

  • 分隔符:可以是除了字母、数字、反斜线及空白符以外的任何字符
  • 表达式:由一些特殊字符和非特殊字符组成。
  • 修饰符:用于开启或者关闭某种功能。

元字符(Meta-Characters)

是正则表达式中具有特殊意义的字符

常用元字符

元字符 描述
. 匹配除换行符以外的任意字符
\w 匹配字母、数字或下划线或汉字
\s 匹配任意空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符的开始
$ 匹配字符的结束
- 表示范围
[ ] 匹配括号中的任意一个字符
*、+、? 量词

量词

限定符 描述
* 重复0次或更多次
+ 重复1次或更多次
重复0次或1次
{n} 重复n次
{n,} 至少重复n次
{n,m} 重复n次到m次

正则表达式匹配规则

  1. 字符组 [0-9]
  2. 转义 \\ \{ \}
  3. 反义
字符 描述
\W 匹配任意不是字母、数字、下划线、汉字的字符
\S 匹配任意不是空白的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除x以外的任意字符

4. 分支 就是存在多种可能的匹配情况。[ch]at=(c|h)at
5. 分组

类别 代码/语法 描述
捕获 (exp) 匹配exp,并捕获文本到自动命名的组里
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可写成(?’name’exp)
(?:exp) 匹配exp,不捕获匹配的文本,也不给次分组分配组号
零宽断言 (?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
(?!exp) 匹配后面跟的不是exp的位置
(?<!exp) 匹配前面不是exp的位置

正则表达式 Regular Express相关推荐

  1. 初步了解并使用正则表达式 (REGular EXPression)

    正则表达式(REGular EXPression),正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本.只有掌 ...

  2. java正则表达式及api_JAVA常用API:正则表达式regular expression

    一.正则表达式的概念 正则表达式,regular expression,在代码中通常简写成regex 正则表达式是一个字符串,使用每单个字符串来描述.定义匹配规则,匹配一系列符合某个语法规则的字符串. ...

  3. 正则表达式 匹配点号_Python入门:正则表达式(Regular Expression)

    正则表达式用来干嘛 正则表达式是用来匹配文本的一种语言.别被语言吓到,正则表达式其实非常简单,可能你花2个小时就能用起来,但是你一定会觉得非常强大,像非常厉害的数据爬取,网页爬虫,都要用到正则表达式! ...

  4. oracle的正则表达式(regular expression)简单介绍

    目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(Linux, Unix等),HP等操作系统,PHP,C#,Java等开发环境. Oracle 10g正则表达式提高了SQL灵活性.有效的解 ...

  5. 正则表达式Regular Expression

    <编译原理>第三章习题 我们的教材是那本经典的"龙书":<Compiler: Principles, Techniques, and Tools> 灰常灰常 ...

  6. 正则表达式(regular expression)————以Qt为例

    文章目录 1 应用 2 简介 2.1 组成 2.2 特殊字符 2.2.1 匹配多个字符串 2.2.2 替换字符串 2.2.3 统计字符出现次数 2.3 Qt中使用 3 regexp结构集合 3.1 表 ...

  7. Regular Expression:C++正则表达式库(RE库regex)

    正则表达式(Regular Expression)是一种描述字符序列的方法,是处理字符序列的一种强大的计算工具!(字符串的匹配.查找.替换) 1.ECMAScript :ECMA-262规范: ECM ...

  8. 通配符(WildCard)与正则表达式(Regular Expression)

    1.通配符(wildcard)就是万用牌的意思 * 表示匹配任意长度的任意字符 ? 表示匹配一个任意字符 [-]则表示匹配括号中列出的字符中的任意一个 [!..]表示不匹配括号中列出的字符中的任意一个 ...

  9. UltraEdit正则表达式使用(Regular Expressions in UltraEdit)

    正则表达式作为模式匹配,经常用于查找/替换操作的特定字符串.使用正则表达式来简化操作和提高效率的方式有许多.下面列出了一个用于ultra - edit样式和unix样式正则表达式的参考以及一些示例,演 ...

  10. python3 爬虫相关学习10:RE 库/ regex /regular experssion正则表达式学习

    目录 1 关于:re / regex / regular expression 1.1 什么是正则表达式 1.2 在python中安装正则模块 1.2.1 python里一般都默认安装了 re正则模块 ...

最新文章

  1. Ubuntu常用快捷键
  2. cmd.exe命令行方式执行matlab代码 【转】
  3. Kotlin的Reified类型:怎样在函数内使用这一类型(KAD 14)
  4. openssl 版本区别_冰蝎的前世今生:3.0新版本下的一些防护思考
  5. 永洪报表工具_该怎么选BI工具
  6. 【GitHub教程】如何使用Eclipse将本地项目上传到github
  7. WPF对某控件添加右键属性
  8. java能打开mob吗_使用 Java添加KeyMob手机聚合平台教程
  9. ilm 和dlm差异_Oracle 的信息生命周期管理工具(ILM assistant)
  10. 身处小公司,如何在2年内快速突破,拿到大厂offer?
  11. 全网首发:freeswitch无法正常绑定端口5060的解决办法
  12. alpha因子常见问题_因子体系(一):从因子确定到ALPHA和风险的界定
  13. excel按某个值进行筛选后,将筛选出来的行进行排序
  14. 浅析服装信息化面前的三座大山
  15. 轮播图展示与轮播图管理
  16. win32API网址
  17. Vuex、axios以及跨域请求处理
  18. python执行javascript网页_Python 爬虫如何优雅地执行 javascript 函数
  19. iOS冰与火之歌 – Objective-C Pwn and iOS arm64 ROP
  20. c语言程序设计精髓daan,2020MOOCC语言程序设计精髓标准答案

热门文章

  1. C#实现百度翻译API调用
  2. 怎样查询服务器中标信息,太极中标云服务器
  3. python alpha通道_python – 使用matplotlib和alpha通道组合图片和绘图
  4. 计算机分盘介质受写入保护,硬盘介质受写入保护怎么办
  5. 非银行支付机构网络支付业务管理办法
  6. v-else-if使用方法
  7. Ubuntu 修改鼠标中键功能
  8. Python爬虫入门教程:豆瓣Top电影爬取
  9. vc2005和IE冲突 主要是在通过向导添加方法或变量的时候会报脚本错误。
  10. linux wifi音箱,基于Orangpi Zero和Linux ALSA实现WIFI无线音箱(一)