码迷,mamicode.com
首页 > 编程语言 > 详细

Python自动化开发从浅入深-语言基础(正则表达式)

时间:2016-02-10 14:16:38      阅读:325      评论:0      收藏:0      [点我收藏+]

标签:

   正则表达式是处理字符串的强大工具,它通过一定的语法规则查找匹配字符串,并返回自己想获取的字符串值。

即让字符串与某种模式匹配,而获取一个新的序列

  如要使用正则表达式语法,需import re模块,然后使用 r"正则表达式" (解释性正则定义)定义正则规则,也可通过 re.compile(r"正则表达式") (编译性正则定义)进行正则定义,编译性正则定义效率较解释性正则定义要高。

一、正则表达式元字符包括:

. ^ $ * + ? { [ ] \ | ( )

元字符是正则表达式语法的关键字,具有语法规则,如下例:...表示在a和b之间有3个任意字符,匹配时只需首尾字符是a和b,中间有三个任意字符便能匹配。
技术分享

 

二、预定义字符集

\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_]。
  技术分享

 

三、字符匹配

.   匹配除换行符外的任意字符
技术分享 \ 可以将一个字符进行转义成其他意思。保留特殊字符的本意。下例中的+号是元字符,有正则语法功能,如需表示原意,则需加上转义符\
技术分享 [字符集] 可以匹配字符串中可以是字符集中的任意字符。下例[abc]表示只要是其中的任意一个字符便匹配。
技术分享

 

 四、匹配字符的数目符号

*      对前一个字符匹配0或者无限次,‘‘是对数字0次的匹配结果
技术分享
+ 对前一个字符匹配1或者无限次
技术分享 ? 对前一个字符匹配0或1次,下例中对 -号的匹配可有可无
技术分享 {m} 对前一个字符匹配m次,下例中只匹配2个数字
技术分享 {m,n} 对前一个字符匹配m到n次,下例中匹配2到4个数字的值
技术分享

 

五、匹配边界符号

^  或 \A   对字符串的开头字符串匹配

$  或 \Z   对字符串的尾部字符串匹配

\b           对\w和\W之间的字符进行匹配

\B    [^\b]

 

六、逻辑与分组

|          或的意思,对左右字符任意匹配一个,匹配顺序从左到右

(...)      分组,

 

 

 

 

 

 

Python自动化开发从浅入深-语言基础(正则表达式)

标签:

原文地址:http://www.cnblogs.com/whiggzhaohong/p/5183561.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!