Python 核心编程读书笔记 Day6
Posted on 四 17 七月 2014 in readings • 1 min read
今天阅读了 15-19 章的内容,前面的是 Python 中的关键重要内容,而这之后的几章内容都是 Python 的一些高级内容。所谓高级指的是这些章节描述了一些与 Python 相关的比较高的层面的内容,比如正则表达式,网络编程等等内容,下面继续总结今天的阅读笔记。
第十五章:正则表达式
在文本处理和数据处理中,正则表达式提供了一种模式匹配,搜索文本的方式。正则表达式在很多语言中都被支持,而同样 Python 也提供了对正则表达式支持的模块 re。本章的内容就是 Python 的正则表达式模块,下面是要点:
1.正则表达式是一个由含有文本和特别字符组成的字符串,通过正则表达式可以描述想要匹配的内容;
2.re1|re2
表示匹配 re1 或者 re2;
3..
表示匹配换行符 '\n' 之外的其他任何字符;
4.^
表示匹配字符的开始,在 []
内表示否定;
5.$
表示匹配字符的结尾;
6.*
表示匹配前面的正则表达式零次或者多次;
7.+
表示匹配前面的正则表达式一次或者多次;
8.?
表示匹配前面的正则表达式零次或者一次;
9.{N}
表示匹配前面的正则表达式 N 次;
10.{M, N}
表示匹配前面的表达式 M 次到 N 次;
11.[...]
表示匹配里面出现的任意字符,一个;
12.\d
匹配数字;
13.\w
匹配数字及字母;
14.\s
匹配任何空白符;
15.\b
匹配单词的边界(开始);
16.\D
,\W
,\S
,\B
表示和小写相反,即不匹配;
17.re.search(pattern, string, flags=0)
表示在指定字符串中搜索指定的模式,第一次搜索到则返回匹配结果;
18.re.match(pattern, string, flags=0)
表示对指定字符串从字符串的开始位置尝试匹配指定模式;
19.re.findall(pattern, string[, flags])
表示在指定字符串中搜索所有的匹配结果;
20.re.sub(pattern, repl, string, max=0)
可以对匹配的结果进行替换;
21.Python 的正则表达式是默认贪婪模式的,在利用通配符的时候会尝试匹配最多的字符,可以用 ?
来限制;