\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的更多相关文章

  1. HowTo: Linux Server Change OR Setup The Timezone

    Method 1 #tzselect # select timezone e.g. Asia/Shanghai#echo 'Asia/Shanghai' > /etc/timezone # se ...

  2. Linux TC流量控制HOWTO中文版

    <本文摘自Linux的高级路由和流量控制HOWTO中文版 第9章节>网人郭工进行再次编译: 利用队列,我们可以控制数据发送的方式.记住我们只能对发送数据进行控制(或称为整形).其实,我们无 ...

  3. Howto: 如何将ArcGIS Server缓存移动到新服务器

     Howto: 如何将ArcGIS Server缓存移动到新服务器 文章编号: 33686 软件: ArcGIS Server 9.2, 9.3, 9.3.1 操作系统: Windows 2000, ...

  4. 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 ...

  5. OpenSSL Command-Line HOWTO

    OpenSSL Command-Line HOWTO The openssl application that ships with the OpenSSL libraries can perform ...

  6. Bootstrap 3 How-To #2 标题,链接与按钮

    这个系列的要点来自一本名为 Twitter Bootstrap Web Development How-to 的书,但是,这本书的内容是基于以前版本的,与最新的 3.0 并不一致. 为了方便学习和使用 ...

  7. 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 ...

  8. UBIFS FAQ and HOWTO

    转:http://www.linux-mtd.infradead.org/faq/ubifs.html UBIFS FAQ and HOWTO Table of contents How do I e ...

  9. UBI FAQ and HOWTO

    转:http://www.linux-mtd.infradead.org/faq/ubi.html UBI FAQ and HOWTO Table of contents How do I enabl ...

  10. HOWTO install Oracle 11g on Ubuntu Linux 12.04 (Precise Pangolin) 64bits

    安装了Ubuntu 12.04 64bit, 想在上面安装Oracle 11gr2,网上找了好多文档都没成功,最后完全参考了MordicusEtCubitus的文章. 成功安装的关键点:install ...

随机推荐

  1. Perl多进程

    perl作为一种解释性的语言,非常受广大系统管理员的欢迎,优点么就不多说了,坏处也有不少,比如对线程的支持,就一直不咋地,所以大多数情况下,我们都须要多个进程,来帮助我们完毕工作,闲话少说,上代码. ...

  2. 开发者必备,超实用的PHP代码片段(转)

    此前,研发频道曾发布<直接拿来用,10个PHP代码片段>,得到了网友们的一致好评.本文,笔者将继续分享九个超级有用的PHP代码片段.当你在开发网站.应用或者博客时,利用这些代码能为你节省大 ...

  3. 错误解决:release' is unavailable: not available in automatic reference counting mode

    解决办法: You need to turn off Automatic Reference Counting. You do this by clicking on your project in ...

  4. 一个想法(续二):换个角度思考如何解决IT企业招聘难的问题!

    前言: 上一篇文章:一个想法:成立草根技术联盟对开发人员进行技术定级解决企业员工招聘难问题! 当时写文的思维,是从一个公益组织的角度的思考. 因此,有不少关于从利出发的反方观点,的确是值的思考! 任何 ...

  5. php引用详解

    <?php function foo($bar){   $bar='111111111'; } $str='2222222222222'; foo($str); echo $str; //out ...

  6. Eclipse launch failed.Binary not found解决方案

    配置完成后建立工程测试,发现建立Hello World c++ Project类型的项目后可以运行测试,直接建立空项目写个测试类无法运行,提示"launch failed.Binary no ...

  7. 谈KVC、KVO(重点观察者模式)机制编程

    一不小心,小明在<跟着贝尔去冒险>这个真人秀节目中看到了“一日警察,一世警察”的Laughing哥,整个节目除了贝尔吃牛睾丸都不用刀叉的不雅餐饮文化外,还是镜头少普通话跟小明一样烂的Lau ...

  8. css3 一些属性

    ==text-shadow== 语法:text-shadow: x-offset y-offset blur-radius color text-shadow:X 轴偏移量 Y轴偏移量 模糊半径 阴影 ...

  9. linux高可用集群(HA)原理详解(转载)

    一.什么是高可用集群 高可用集群就是当某一个节点或服务器发生故障时,另一个 节点能够自动且立即向外提供服务,即将有故障节点上的资源转移到另一个节点上去,这样另一个节点有了资源既可以向外提供服务.高可用 ...

  10. JDBC的批量批量插入

    本文部分转载于:http://blog.itpub.net/29254281/viewspace-1151785/ http://www.cnblogs.com/chenjianjx/archive/ ...