Chinaunix首页 | 论坛 | 博客
  • 博客访问: 750243
  • 博文数量: 231
  • 博客积分: 3217
  • 博客等级: 中校
  • 技术积分: 2053
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-04 12:01
文章分类

全部博文(231)

文章存档

2015年(1)

2013年(10)

2012年(92)

2011年(128)

分类: LINUX

2012-08-15 10:47:36

点号(.)可以匹配任何字符串(除换行符到任何单个字符),就成为通配符。
为了让特殊字符表现的想普通字符一样,需要对它进行转义,可以在它前面加上反斜线如'python\\.org'这样只会匹配'python.org'
字符集可以匹配它所包括到任意字符。如[a-z]  '[a-zA-Z0-9]'.反转字符集可以在开头使用^字符如:'[^abc]'匹配除abc以外到字符。
选择项到特殊字符:管道符号(|),如:'python | perl ' 选择python或者perl中一个。
在子模式后面加上问号(?)表示它就变成可选项,它可能出现在匹配到字符串中,但不是必需到。
r'(http://)?(www\.)?python\.org'  (http://)和(www\.)不是必须要出现在匹配到字符传中,\.防止点号作为通配符。
python.org

(pattern)*:允许模式重复0次或者多次
(pattern)+:允许模式重复1次或者多次
(pattern){n,m}:允许模式重复n~m次
确定子字符串位于整个字符串到开始还是结尾是很有用的。比如只想在字符串到开头而不是其他位置可以脱字符(^)标记。:'^ht+p://python.org' 匹配'htttp:python.org'.不会匹配''

re模块中一些重要函数
compile(pattern[.flags])          包含正则表达式到字符串创建模式对象
search(pattern,string[,flags])   字符串中寻找模式
match(pattern,string[,flags])    在字符串到开始处匹配模式
split(pattern,string[,flags])       根据模式到匹配项来分割字符串
findall(pattern,string)               列出字符串中所有匹配项
sub(pattern,replace,string[,count=0]) 将字符串中所有pattern到匹配项用replace替代
escape(string)                               将字符串中所有特殊正则表达式字符转义。
 
 
 
正则表达式模式能够识别的以下特殊字符序列:
                                      
阅读(836) | 评论(1) | 转发(0) |
0

上一篇:python之shelve

下一篇:列表内建函数

给主人留下些什么吧!~~

liuyang8907102012-08-20 16:47:24