HOWTO re
\w 字母数字字符 [a-z A-Z 0-9_]
\W 非字母数组字符 [^a-z-A-Z 0-9_]
\d 十进制数字 [0-9]
\D 非数字字符 [^0-9]
\s 空白字符 [\t\n\r\f\v]
\S 非空白字符 [^\t\n\r\f\v]
‘.’ 匹配除了换行符之外的所有字符,在dotall模式下,匹配所有字符。
* 匹配前面的字符零次或多次。
+ 匹配前面的字符至少一次。
? 匹配前面的字符零次或者一次。
{m,n} 匹配前面的字符m-n次。可以缺省m,n,m缺省时为0,n缺省时为无穷大
re.compile(‘RE’,re.IGNORECASE) re.IGNORECASE可以缺省


match:在字符串的开始匹配,返回字符
search:在整个字符串中匹配,返回位置
若都没有匹配成功就返回None。
findall:在所有子字符串中匹配,返回list
finditer:在所有子字符串中匹配,返回iterator

group():返回匹配成功的字符串
start() 返回匹配成功的第一个位置
end() 返回匹配成功的最后一个位置
span() 返回匹配成功的位置的元组
因为match之匹配字符串的开始,所以start总是返回0.
Flags:

I:不分大小写。
L:\W\w\B\b 可以匹配法文之类的非英文字符作为英文字符,但是会减慢速度
M:^ $在默认模式只能匹配字符串的begining和end。在M下,可以匹配所有行的begining和end。
S:. 在默认模式下匹配所有字符除了换行符。在M下,可以匹配所有行的begining和end。
A: \w\W\b\B\s\S 可以匹配ASCII而不是Unicode
X: 默认省略RE表达式中的空格,除了空格表达式。
To match a literal '|', use \|, or enclose it inside a character class, as in [|].
把元字符放在character class里面就不用\来表示。
\A : 无论在默认模式还是M模式中,都是匹配字符串的begining。
\Z : 无论在默认模式还是M模式中,都是匹配字符串中的end。
\b : 单词边界,表示单词的begining或end,单词是数字和字母的序列,以数字或字母开始,以数字或字母接结束。
\B : 意思跟b相反,非边界。

RE的split和STR的split不一样。
HOWTO re的更多相关文章
- HowTo: Linux Server Change OR Setup The Timezone
Method 1 #tzselect # select timezone e.g. Asia/Shanghai#echo 'Asia/Shanghai' > /etc/timezone # se ...
- Linux TC流量控制HOWTO中文版
<本文摘自Linux的高级路由和流量控制HOWTO中文版 第9章节>网人郭工进行再次编译: 利用队列,我们可以控制数据发送的方式.记住我们只能对发送数据进行控制(或称为整形).其实,我们无 ...
- Howto: 如何将ArcGIS Server缓存移动到新服务器
Howto: 如何将ArcGIS Server缓存移动到新服务器 文章编号: 33686 软件: ArcGIS Server 9.2, 9.3, 9.3.1 操作系统: Windows 2000, ...
- HowTo Perform the spatial selection 'Share a line segment with' using ArcObjects
HowTo Perform the spatial selection 'Share a line segment with' using ArcObjects Article ID: 26528 ...
- OpenSSL Command-Line HOWTO
OpenSSL Command-Line HOWTO The openssl application that ships with the OpenSSL libraries can perform ...
- Bootstrap 3 How-To #2 标题,链接与按钮
这个系列的要点来自一本名为 Twitter Bootstrap Web Development How-to 的书,但是,这本书的内容是基于以前版本的,与最新的 3.0 并不一致. 为了方便学习和使用 ...
- HOWTO: Create native-looking iPhone/iPad applications from HTML, CSS and JavaScript
HOWTO: Create native-looking iPhone/iPad applications from HTML, CSS and JavaScript Though it's not ...
- UBIFS FAQ and HOWTO
转:http://www.linux-mtd.infradead.org/faq/ubifs.html UBIFS FAQ and HOWTO Table of contents How do I e ...
- UBI FAQ and HOWTO
转:http://www.linux-mtd.infradead.org/faq/ubi.html UBI FAQ and HOWTO Table of contents How do I enabl ...
- HOWTO install Oracle 11g on Ubuntu Linux 12.04 (Precise Pangolin) 64bits
安装了Ubuntu 12.04 64bit, 想在上面安装Oracle 11gr2,网上找了好多文档都没成功,最后完全参考了MordicusEtCubitus的文章. 成功安装的关键点:install ...
随机推荐
- C++中使用union的几点思考(转)
C++中使用union的几点思考 大卫注:这段时间整理旧资料,看到一些文章,虽然讲的都是些小问题,不大可能用到,但也算是一个知识点,特整理出来与大家共享.与此相关的那篇文章的作者的有些理解是错误的,我 ...
- Visio Premium 2010密钥+破解激活方法
Visio Premium 2010密钥+破解激活方法: 在安装时能够使用下面密钥: GR24B-GC2XY-KRXRG-2TRJJ-4X7DC VWQ6G-37WBG-J7DJP-CY66Y-V27 ...
- DELPHI 多线程
效果不正确 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Control ...
- 【VBA研究】怎样将单元格数据赋给数组
作者:iamlaosong 将工作表中的数据赋给数组或者将数组的数据赋给工作表,一般有两种.一种是循环的方法,一个一个的传,这样的方法一般用于须要对每一个数据特别处理的场合,还有一种是一次性用赋值语句 ...
- Metadata Lock原理4
http://blog.chinaunix.net/uid-28212952-id-3400571.html Alibaba 今天发生一个故障,MM复制结构(主备库),备库slave del ...
- ios5 xcode 4.2 中 release显示编译警告或错误的解决方法
转自:http://lizi464789754.blog.163.com/blog/static/1689370852011924113245778/ 由于 iOS5 xcode4.2 引入了ARC ...
- memcache 存储session
php使用memcache存储session http://blog.csdn.net/weilee2009/article/details/7658260
- c语言字符串实例
例子:涉及字符串.字符.指针.++等 例一:字符串与字符 #include <stdio.h> void reverse(char *str) { char *end=str; print ...
- 面试常备题---二叉树总结篇(zt)
人生就像是一场长跑,有很多机会,但也得看我们是否能够及时抓牢,就像下面这样的代码: while(isRunning) { if(...){...} else if(...){...} ... else ...
- Debian7.7 wheezy 中源码安装emacs24
我用的是ARM版本,竟然没有最新的emacs 24,很多第三方插件不能用,果断重新编译个1.追加软件源 deb-src http://ftp.cn.debian.org/debian/ wheezy ...