Python中使用正则表达式
正则表达式,又称为规则表达式,它不是某个编程语言所特有的,是计算机科学的一个概念,通常被用来检索和替换符合某些规则的文本。
1、正则表达式语法
1.1 行定位符
行定位符就是用来描述字符串的边界。“^”表示行的开始;“$”表示行的结尾
1.2 元字符
例如:
\bmr\w*\b
匹配以字母mr开头的单词,先是从某个单词开始处(\b),然后匹配字母mr,接着是任意数量的字母或数字(\w*),最后是单词结束处(\b)。该表达式可以匹配“mrsoft”,“mrbook”等。
代码 | 说明 |
---|---|
· | 匹配除换行符以外的任意字符 |
\w | 匹配字母、数字、下划线或汉字 |
\s | 匹配任意的空白符 |
\d | 匹配数字 |
\b | 匹配单词的开始或结束 |
^ | 匹配字符串的开始 |
$ | 匹配字符串的结束 |
1.3 重复
常用的限定符如表所示:
限定符 | 说明 | 举例 |
---|---|---|
? | 匹配前面的字符零次或一次 | colou?r:匹配colour和color |
+ | 匹配前面的字符一次或多次 | go+gle:匹配的范围从gogle到goo…gle |
* | 匹配前面的字符零次或多次 | go*gle:匹配的范围从ggle到goo…gle |
{n} | 匹配前面的字符n次 | go2}gle:只匹配google |
{n,} | 匹配前面的字符最少n次 | go{2,}gle:匹配的范围从google到goo…gle |
{n,m} |