正则表达式简介及元字符

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_42370340/article/details/102627461

1、动机:

  1. 文本处理已经成为计算机的常见工作之一
  2. 对文本内容的搜索,定位,提取是逻辑比较复杂的工作
  3. 为了快速解决上述问题,产生了正则表达式技术
    定义 :
    即文本的高级匹配模式,提供搜索,替代等功能。其本质是一系列由特殊符号组成的字串,这个字串即正则表达式。
    匹配原理 :
    由普通字符和特殊符号组成字符串,通过描述字符的重复和位置等行为,达到匹配某一类字符串的目的
    目标 :
  4. 熟练掌握正则表达式符号
  5. 实现基本的文本搜索,定位,提取,理解正则用法
  6. 能够适用re模块操作正则表达式
    特点:
  • 方便文本处理
  • 支持语言众多
  • 使用灵活多样

2、元字符

1. 普通字符
a 每个字符匹配对应的字符

2. 或
| 匹配 | 两边任意一个正则表达式

3. 匹配单个字符
. 匹配除换行外的任意字符

4. 匹配开始位置
^ 匹配目标字符串的开头位置

5. 匹配结束位置
$ 匹配字符串的结束位置

6. 匹配重复
* 匹配前面的字符出现0次或多次

7. 匹配重复
+ 匹配前面的字符出现1次或多次

8. 匹配重复
? 匹配前面的字符出现0次或1次

9. 匹配重复
{n} 匹配指定的重复次数

10. 匹配重复
{m,n} 匹配前面的正则表达式 m–n次

11. 匹配字符集合
[字符集] 匹配任意一个字符集中的字符

扫描二维码关注公众号,回复: 7566933 查看本文章

12. 匹配字符集
[^…] 字符集取非,除列出的字符之外任意一个字符

13. 匹配任意(非)数字字符
\d 匹配任意数字字符 [0-9]
\D 匹配任意非数字字符 [^0-9]

14. 匹配任意(非)普通字符
\w 匹配普通字符 [_0-9a-zA-Z] 也能匹配普通汉字
\W 匹配非普通字符

15. 匹配任意(非)空字符
\s 匹配任意空字符 [ \r\t\n\v\f]
\S 匹配任意非空字符

16. 匹配字符串位置
\A 匹配字符串开头位置 ^
\Z 匹配字符串结尾位置 $
绝对匹配 : 正则表达式要完全匹配目标字符串内容
在正则表达式开始和结束位置加上^ $ (或者\A \Z)。这样正则表达式必须匹配整个目标字符串才会有结果

17. 匹配(非)单词边界
\b 匹配单词边界位置
普通字符和非普通字符交界认为是单词边界
\B 匹配非单词边界位置

元字符总结

匹配单个字符
a . \d \D \w \W
\s \S […] [^…]

匹配重复
*+ ? {n} {m,n}
匹配位置
^ $ \A \Z \b \B
其他
| () \

猜你喜欢

转载自blog.csdn.net/weixin_42370340/article/details/102627461