模块3 re, 正则表达式 详解!!!

在Python中嵌入re 模块实现正则

功能:实现对字符串的模糊查询

find,split,replace等函数,是完全匹配查找,只要有一个不符合,就查找不到,

re是通过元字符进行的模糊查询,有  .  * ^ $ +? 等11个字符组成

点   .   代表除换行符以外的任意一个字符

^ 是只匹配字符串开始位置,即使后面还有也不取值,

$ 是从字符串的末尾开始匹配,如果想匹配 $ 本身,就需要转义

* (0,无穷次)是把前面的字符,0代表没有就不 重复,或者重复无穷次 ,0 就是没有,不重复,如果有,就重复无穷次

 

+ (1,无穷次)是把前面的字符,1 代表就重复一次,最少出现一次, 或者重复无穷次,

 

 

 

? (0,1) 是要么有,就重复一次,,没有就不重复

 

 

{ } 指定次数重复

 

 

 

转义符 \

1、反斜杠后边跟元字符去除特殊功能,比如\.

2、反斜杠后边跟普通字符实现特殊功能,比如\d

 

 

 

 

 #############以上内容是把  ----反斜杠后边跟元字符去除特殊功能---------

 

 

======================下一图是  反斜杠后边跟普通字符实现特殊功能,比如\d  ---------------------

\d  匹配任何十进制数;      它相当于类 [0-9]。
\D  匹配任何非数字字符;    它相当于类 [^0-9]。
\s  匹配任何空白字符;      它相当于类 [ \t\n\r\f\v]。
\S  匹配任何非空白字符;    它相当于类 [^ \t\n\r\f\v]。
\w  匹配任何字母数字字符;   它相当于类 [a-zA-Z0-9_]。
\W  匹配任何非字母数字字符; 它相当于类 [^a-zA-Z0-9_]
\b  匹配一个特殊字符边界,比如空格 ,&,#等

 

 

 

 

 

 

 

=========================================================================================

 

=================================match 调用================================================

========================匹配年==============

 

 

=====关于分组,起名字====search是提取组名的方法  ,group可以把-blog-aticles-2005都可以取出来,如果只打印年份,就传入参数year即可

 

 -------------------------------字符集  [ ]   只能去里面的任意一个, 与下面介绍的   |   管道符号 相似  -----------------

 

 ==========================关于  管道符号  |   

取消括号的优先级,打印完整路径

 

posted @ 2017-06-27 02:13  谷子的  阅读(246)  评论(0编辑  收藏  举报