惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
Microsoft Security Blog
Microsoft Security Blog
Google DeepMind News
Google DeepMind News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
GbyAI
GbyAI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
V2EX
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
博客园_首页
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
T
The Blog of Author Tim Ferriss
Stack Overflow Blog
Stack Overflow Blog
Recent Announcements
Recent Announcements
P
Proofpoint News Feed
博客园 - 司徒正美
有赞技术团队
有赞技术团队
Engineering at Meta
Engineering at Meta
Last Week in AI
Last Week in AI
MongoDB | Blog
MongoDB | Blog

博客园 - 银翼

【MySQL】Windows下如何彻底卸载MySQL? 【MySQL】Windows下如何重置root账号密码? 【Java】Task07实验4第5题解析 【辅导】Task12 类的定义与继承练习 【辅导】Task11 如何获取文件上传错误信息 PHP开发环境配置 XAMPP更换Apahce服务端口号 《Web应用开发技术(PHP)》往届学生优秀作业 【辅导】Task19 实现用户登录 主要知识点 【辅导】Task18 更新与插入删除操作 主要知识点 【辅导】Task17 查询数据 主要知识点 【辅导】Task16 使用MySQL数据库 主要知识点 【辅导】Task15 熟悉错误与异常处理 主要知识点 【辅导】Task13 使用会话管理 主要知识点(2) 【辅导】Task13 使用会话管理 主要知识点(1) 【辅导】Task12 使用类和对象 主要知识点(2) 【辅导】Task12 使用类和对象 主要知识点(1) 【辅导】Task11 熟悉PHP文件操作 主要知识点 【辅导】Task10 掌握PHP表单处理 主要知识点
【辅导】Task14 使用正则表达式 主要知识点
银翼 · 2020-04-16 · via 博客园 - 银翼

    正则表达式是一门“语言”,用于描述文本的模式,以便用于文本的匹配、检索和抓取。正则表达式是简单的,它用普通字符和一些特殊字符(元字符)来描述文本的模式,同时它又是强大的,可以高效地完成文本的处理。

    许多高级语言都支持使用正则表达式,如大家使用过的Javascript和Java,C语言通过第三方函数库也可支持正则表达式,MySQL也支持在SQL语句中使用正则表达式。

    本任务主要让大家熟悉正则表达式的基础知识,掌握常用文本匹配的正则表达式编写。高级的应用还需要大家自己去学习。

1、什么是正则表达式?

    正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。

  • 匹配:使用preg_match()preg_match_all()函数
  • 替换:使用preg_replace()函数
  • 分割子串:使用preg_split()函数

2、正则表达式语法

    正则表达式必须用/…/括起来。如:/^[_a-zA-Z0-9]{3,10}$/

    正则表达式由普通字符特殊字符(元字符)组成。

  • 普通字符:所有不是元字符的字符,包括大小写字母、数字、标点符号和其它符号。如:/runo*b/中,runob都是普通字符。要表示元字符本身的字符,要使用转义符\,如\-。
  • 元字符:在正则表达式中有含义的字符。
  •  ^ 匹配字符串开始;取非运算
  •  $ 匹配字符串结束
  •  [ ] 匹配多个字符中任一个
  •  {m,n} 重复次数 /^\d{3,}$/
  •  ( ) 组合正则表达式,改变组合优先顺序
  •  | 或运算
  •  * 匹配0次或多次
  •  + 匹配1次或多次
  •  匹配0次或1次
  •  - 连字符,如a-z
  •  . 除\r,\n以外的任意单个字符
  •  \ 转义符,如\\表示\字符

3、正则表达式匹配规则

  • 基本模式匹配,如使用^,$确定头与结尾 /^food$/
  • 使用字符簇,如[a-z]
  • 确定重复出现,如,\w+,\d{10},[1-9]\d*
  • 判断运算符优先级

4、常用正则表达式

(1)中国邮政编码 /^\d{6}$/   [1-9]\d{5}

(2) 手机号码 \d{11}  1[3-9]\d{9}

(3) 国内固定电话号码

(4) 身份证号 \d{17}[0-9xX]

(5) 用户名  思考:必须使用字母开头,后面可以是字母数字下划线,最多32个字符?(PHP中标识符命名规则)

(6) 学号,10位数字

(7) 正整数、整数、浮点数

5、课程预告

下周三(4.22),完成Task 15 熟悉错误调试与异常处理 任务的学习。

下周四(4.23),课堂测验。

从第11周起,我们主要介绍PHP操作MySQL数据库。