美文网首页每天写500字每天写1000字
python 30:增加正则表达式的可读性,参数re.VERBO

python 30:增加正则表达式的可读性,参数re.VERBO

作者: 金石明镜 | 来源:发表于2019-12-16 18:06 被阅读0次

可以将正则表达式分多行写出,每一行后面写上注释,这样使复杂正则表达式具有可读性。下面是一个匹配电话号码的例子:

phoneRegex = re.compile(r'''( (\d{3}|\(\d{3}\))? # area code

(\s|-|\.)? # separator

\d{3} # first 3 digits

(\s|-|\.) # separator

\d{4} # last 4 digits

(\s*(ext|x|ext.)\s*\d{2,5})? # extension

)''',re.VERBOSE)

注意,后面要加上参数re.VERBOSE。

第一个参数,正则表达式,写在r'''()'''中的括号中。

可以按意义,分部分写。一部分写一行,后面加上注释。执行时,注释会被忽略。同时,多余的空白也会被忽略。如果用以前的方式写,则不小心写的空白,可能会改变正则表达式的意义。

下面看这个正则表达式匹配实例。

>>> mo=phoneRegex.search('111-123.2345')

>>> mo.group()

'111-123.2345'

>>> mo=phoneRegex.search('(111) 123.2344')

>>> mo.group()

'(111) 123.2344'

>>> mo=phoneRegex.search('(111).123.2344')

>>> mo.group()

'(111).123.2344'

>>> mo=phoneRegex.search('(111).123.2344 ext1234')

>>> mo.group()

'(111).123.2344 ext1234'

>>> mo=phoneRegex.search('(111).123.2344 x1234')

>>> mo.group()

'(111).123.2344 x1234'

>>> mo=phoneRegex.search('(111).123.2344 ext.1234')

>>> mo.group()

'(111).123.2344 ext.1234'

相关文章

  • python 30:增加正则表达式的可读性,参数re.VERBO

    可以将正则表达式分多行写出,每一行后面写上注释,这样使复杂正则表达式具有可读性。下面是一个匹配电话号码的例子: p...

  • Python ☞ day 11

    Python学习笔记之 正则表达式 re模块概述:Python自1.5以后增加了re的模块,提供了正则表达式模式...

  • Python 学习笔记 067

    正则表达式 Python自1.5以后增加了re的模块,提供了正则表达式模式 re模块使Python语言拥有了全部的...

  • Python之正则表达运用

    在python中使用正则表达式 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模...

  • python正则表达式

    re模块Python增加了re模块使python语言拥有全部正则表达式的功能。re.match(pattern,s...

  • 正则表达式

    re --- 正则表达式操作 Python正则表达式前向/后向搜索的肯定/否定模式的区别和示例 一、 基本参数使用...

  • 超详细Python正则表达式操作指南(re使用),一

    Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本...

  • ubuntu 下使用virtualenv时提示 The path

    解决方法如上图: 增加参数--python= python3安装路径 用which python3 显示pytho...

  • Python 学习笔记 059

    正则表达式 01 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。re 模块...

  • python正则表达式

    Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。 re 模块使 Python...

网友评论

    本文标题:python 30:增加正则表达式的可读性,参数re.VERBO

    本文链接:https://www.haomeiwen.com/subject/pvbdnctx.html