在python正则表达式教程中正确使用正则表达式方案

此篇文章主要是描述如何在python正则表达式的教程中正确的使用正则表达式,以及如何用通过Python正则表达式来编译正则表达式的相关实际应用与相关代码你的介绍,以下就是文章的具体介绍。

现在我们已经看了一些简单的正则表达式,那么我们实际在 Python 中是如何使用它们的呢? re 模块提供了一个正则表达式引擎的接口,可以让你将 REs 编译成对象并用它们来进行匹配。

编译正则表达式

正则表达式被编译成 `RegexObject` 实例,可以为不同的操作提供方法,如模式匹配搜索或字符串替换。

#!python>>> import re>>> p = re.compile('ab*')
>>> print p<re.RegexObject instance at 80b4150>re
.compile() 

也接受可选的标志参数,常用来实现不同的特殊功能和语法变更。我们稍後将查看所有可用的设置,但现在只举一个例子:

#!python>>> p = re.compile('ab*', re.IGNORECASE)RE 

被做为一个字符串发送给 re.compile()。REs 被处理成字符串是因为正则表达式不是 Python 语言的核心部分,也没有为它创建特定的语法。(应用程序根本就不需要 REs,因此没必要包含它们去使语言说明变得臃肿不堪。)而 re 模块则只是以一个 C 扩展模块的形式来被 Python 包含,就象 socket 或 zlib 模块一样。

将 REs 作为字符串以保证 Python 语言的简洁,但这样带来的一个麻烦就是象下节标题所讲的。

[编辑] 反斜杠的麻烦

在早期规定中,正则表达式用反斜杠字符 (“\”) 来表示特殊格式或允许使用特殊字符而不调用它的特殊用法。这就与 Python 在字符串中的那些起相同作用的相同字符产生了冲突。

相关推荐