正则表达式

1 常见正则表达式

正则表达式

2 正则表达式

正则表达式是一种独立的语法,和编程语言没有关系,是一种匹配字符串的规则。

3 正则表达式的使用范围

  1. 来确认某一个字符串是否符合规则

  2. 从大段的字符串中找到符合规则的内容

程序领域

1.登录注册页的表单验证 web开发 要求简单语法

2.爬虫

3.自动化开发 日志分析

4 字符组

4-1 匹配括号内1个字符

匹配1,2,a,b

4-2 [0-9][A-Z][a-z]:匹配3个字符,第一个数字,第二个大写,第三个小写

匹配所有符合条件的

4-3 匹配1个字符(数字或者大小写字母)

匹配一个字符

4-4 匹配18位身份证号码

匹配18位身份证号码

4-5 其它

代码块
\d == [0-9] 也表示匹配一个字符,匹配的是一个数字

\w == [0-9a-zA-Z_] 也表示匹配一个数字字母下划线

 \s == [\n \t]  匹配空字符,包括回车 空格 和 制表符tab

 \D 匹配非数字

\W  匹配非数字字母下滑线

 \S  匹配非空白

[\d\D] [\w\W] [\s\S] 匹配所有

^表示从头开始匹配   

 $表示从尾开始匹配

.匹配除换行符以外的任意字符

4-6 字符组的类型 [] [^] | ()

|(或)的用法(身份证)
身份证18位

4-7^ 表示从头匹配

必须开头满足条件,否则匹配失败

4-8 $表示从尾匹配

结尾必须符合条件,否则匹配失败

4-9 .表示匹配换行符以外的任意字符

image.png

5 量词(? + *)

代码块

?匹配0次或者1次

+匹配1次或者多次

*匹配0次或者多次

{n}匹配n次

{n,}匹配至少n次

{n,m}匹配至少n次,最多m次,默认尽可能多,贪婪模式

在量词的后面跟了一个 ? 取消贪婪匹配,非贪婪(惰性)模式

代码块

 .*?x 匹配任意字符直到找到一个x

元字符量词 默认贪婪匹配

元字符量词?  表示惰性匹配

 .*?x 匹配任意字符直到找到一个x

练习题

匹配一个整数或者小数
image.png
别跑,点个赞再走

posted @ 2020-03-13 23:29  姚狗蛋  阅读(139)  评论(0编辑  收藏  举报