正则表达式

2018-09-02  本文已影响24人  HHHHUA

正则表达式的使用

1. 正则表达式语法

1.1. 正则表达式,是一个单独的技术!

正则表达式,有独立的语法结构,区别于其他的编程语言或者程序软件
正则表达式又是一个对于字符串处理非常高效的工具语言——数据描述语言
PYTHON/Java/C/c++/c#--> 数据编程语言
HTML -> 数据标记语言
正则表达式目标:处理字符串[查询匹配操作]
所以很多编程语言、软件程序、操作系统,支持正则表达式对于字符串的处理操作
学习任何编程语言、软件程序、操作系统 ~ 正则表达式的支持!
如今:只要是一个比较主流的操作工具[语言、软件、系统、平台、网络、硬件..]-> 都需要支持正则表达式的操作,-> 提高这些工具的处理效率

1.2. 关于正则表达式语法

正则表达式,处理查询匹配字符串的一个描述语言
本身就是一个字符串-> 特殊的字符串-> 可以描述一个字符串的格式
描述格式:使用通用的语法
正则表达式的基本语法结构

语法 描述
^ 匹配一个字符串的开头位置
$ 匹配一个字符串的结束位置
. 匹配任意一个字符
\d 匹配任意一个数字
\D 匹配任意一个非数字
\s 匹配任意一个空白字符
\S 匹配任意一个非空白字符
\w 匹配任意一个数字或者字母或者下划线
\W 匹配任意一个数字/字母/下划线之外的字符
\b 匹配任意一个单词的边界 python on china\bon\b
\B 匹配任意一个非边界
[abc] 匹配字符a或者b或者c出现了1次
[0-9] 匹配任意一个0~9之间的数字,等同于\d
[0-5] 匹配任意一个0~5之间的数字
[0-10] 匹配一个0-1的数字或者0
[a-z] 匹配任意一个小写字母
[A-Z] 匹配任意一个大写字母
[A-Za-z] 匹配任意一个字母
[0-9A-Za-z_] 匹配任意一个数字或者字母或者下线,等同\w
[^0-9] 匹配任意一个非数字,等同于 \D
X* 匹配x出现了0次或者多次
X+ 匹配x出现了1次或者多次
X? 匹配x出现了0次或者1次
X{m} 匹配x出现了m次
X{m,n} 匹配x至少出现了m次,最多出现了n次
X{m,}
x{,n}
(abc) 分组,将abc作为一个整体进行匹配
(abc def) 用于匹配abc或者def出现了一次
a 匹配字符a出现了1次
Expression 表示贪婪匹配,尽可能多的匹配数据;匹配效率高、可能会匹配到垃圾数据
Expression? 表示懒惰匹配/非贪婪匹配,精确数据匹配过程匹配效率较高,匹配到精确数据
(?P<name>exp) 进行分组匹配exp数据,将匹配到的数据(组)命名为name可以通过name名称直接获取该组的数据
上一篇下一篇

猜你喜欢

热点阅读