Python爬虫入门——正则表达式应用技巧有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2384个文字,预计阅读时间需要10分钟。
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。例如,判断一个字符串是否是合法的Email地址,可以编程提取@前后子串,再分别判断。
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦,而且代码难以复用。
正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。
所以我们判断一个字符串是否是合法的Email的方法是:
因为正则表达式也是用字符串表示的,所以,我们要首先了解如何用字符来描述字符。
在正则表达式中,如果直接给出字符,就是精确匹配。用\d可以匹配一个数字,\w可以匹配一个字母或数字,所以:
- '00\d'可以匹配'007',但无法匹配'00A';
- '\d\d\d'可以匹配'010';
- '\w\w\d'可以匹配'py3';
.可以匹配任意字符,所以:
- 'py.'可以匹配'pyc'、'pyo'、'py!'等等。
本文共计2384个文字,预计阅读时间需要10分钟。
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。例如,判断一个字符串是否是合法的Email地址,可以编程提取@前后子串,再分别判断。
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦,而且代码难以复用。
正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。
所以我们判断一个字符串是否是合法的Email的方法是:
因为正则表达式也是用字符串表示的,所以,我们要首先了解如何用字符来描述字符。
在正则表达式中,如果直接给出字符,就是精确匹配。用\d可以匹配一个数字,\w可以匹配一个字母或数字,所以:
- '00\d'可以匹配'007',但无法匹配'00A';
- '\d\d\d'可以匹配'010';
- '\w\w\d'可以匹配'py3';
.可以匹配任意字符,所以:
- 'py.'可以匹配'pyc'、'pyo'、'py!'等等。

