一,正则表达式
特点,贪婪匹配,它会在允许的范围内取最长的结果。
在应用方面只和字符串打交道。具体应用途径:
1.把一个文件中所有的手机号码都找出来,需要从大段的文字中找到符合规则的内容 # open打开文件
# 读文件 str
# 从一长串的字符串中找到所有的11位数字
# 一个字符一个字符的读
2.输入手机号
# 验证这个手机号是否合法
# 给这个手机号发送一个验证码
# 用户收到验证码 填写验证码
# 完成注册
# 正则表达式
# 从大段的文字中找到符合规则的内容
# 爬虫 从网页的字符串中获取你想要的数据
# 日志分析 提取 2018-8-12 10:---- 花的所有钱
# 什么是日志 :
# 2018-8-12 10:00:00 楼下早点摊 3.00
# 判断某个字符串是否完全符合规则
# 表单验证 : 手机号 qq号码 邮箱 银行卡 身份证号 密码
二,字符组
[0-9] | 匹配数字 |
[a-z] | 匹配小写字母 |
[A-Z] | 匹配大写字母 |
[a-zA-Z] | 匹配大小写字母 |
[a-zA-Z0-9] | 匹配大小写字母+数字 |
[a-zA-Z0-9_] | 匹配数字字母下滑线 |
三,元字符
\w | 匹配数字字母下滑线(等于[a-zA-Z0-9_]) |
\d | 匹配所有的数字(等于[0-9]) |
\s |
匹配所有的空白符(等于回车/换行符 制表符 空格 space [\n\t ]) # 匹配换行符 回车 \n (\W \D \S 和\w \d \s取反 # [\s\S] [\d\D] [\w\W]是三组全集 意思是匹配所有字符) |
\b | 表示单词的边界 |
总结为:\w \d \s(\n\t) \b \W \D \S | |
^ | 匹配一个字符串的开始 |
$ | 匹配一个字符串的结束 |
. | 表示匹配除换行符之外的所有字符 |
[] | 只要出现在中括号内的内容都可以被匹配 |
[^] | 只要不出现在中括号中的内容都可以被匹配(有一些有特殊意义的元字符进入字符组中会回复它本来的意义 : . | [ ] ( )) |
a|b |
或 符合a规则的或者b规则的都可以被匹配 # 如果a规则是b规则的一部分,且a规则比b规则要苛刻/长,就把a规则写在前面 |
() | 分组 表示给几个字符加上量词约束的需求的时候,就给这些量词分在一个组 |
三,量词
{n} | 表示 这个量词之前的字符出现n次 |
{n,} | 表示这个量词之前的字符至少出现n次 |
{n,m} | 表示这个量词之前的字符出现n-m次 |
? | 表示匹配量词之前的字符出现 0次 或者 1次 表示可有可无 |
+ | 表示匹配量词之前的字符出现 1次 或者 多次 |
* | 表示匹配量词之前的字符出现 0次 或者 多次 |
|
|
|||
正则 | 待匹配字符 | 匹配结果 | 说明 |
李 | |||
总结:
标签:字符,量词,匹配,正则表达式,zA,规则,字符串 From: https://www.cnblogs.com/zuishaui/p/17863493.html