论一只爬虫的自我修养7:正则表达式3 – 零基础入门学习Python059

论一只爬虫的自我修养7:正则表达式3

 

让编程改变世界

Change the world by program


 

反斜杠 + 普通字母 = 特殊含义

 

正则表达式的特殊符号除了元字符外,还有一种就是通过反斜杠+普通字母构成的特殊符号。

 

我们来看下它们的含义:

首先是 \序号,这个上节课我们已经介绍过了:第1,如果这个序号的范围是1~99,那么表示引用序号对应的子组所匹配的字符串,子组的序号是从 1 开始算起的;第2,如果序号是以0开头,或者是3个数字的长度。那么不会被用于引用对应的子组,而是用于匹配八进制数字所表示的 ASCII 码值对应的字符。

\A 跟脱字符 ^ 在默认情况下是一样的,都表示匹配字符串的起始位置。也就是说只要前边是 \A 或者 ^ 符号,那么这个字符就必须出现在字符串的开头才算匹配。

\Z 则跟美元符号 $ 在默认情况下是一样的,都表示匹配字符串的结束位置。

 

注意,我刚刚说的是在默认情况下一样,并不是说它们完全一样。因为正则表达式还有个标志的设置,如果你设置了re.MULTILINE标志,那么 ^ 和 $ 元字符还可以匹配换行符的位置,而 \A 和 \Z 则只能匹配字符串的起始和结束位置。

这些匹配位置的字符我们给他们一个名字叫:零宽断言,言下之意就是它们不会匹配任何字符,它们只用于匹配一个位置。

…… 此处省略N多内容,具体请看视频讲解 ……


为您推荐

报歉!评论已关闭.