本文摘自php中文网,作者乌拉乌拉~,侵删。
在这篇文章之中我们就来详细介绍关于正则表达式进阶的知识,以及我会来举一些在python编程之中所可能会出现的问题而写出来的正则表达式的例子。第一个进阶知识点:
切分字符串
用正则表达式切分字符串比用固定的字符更灵活,请看正常的切分代码:
1 2 |
|
嗯,无法识别连续的空格,用正则表达式试试:
1 2 |
|
无论多少个空格都可以正常分割。加入,试试:
1 2 |
|
再加入;试试:
1 2 |
|
如果用户输入了一组标签,下次记得用正则表达式来把不规范的输入转化成正确的数组。
分组
除了简单地判断是否匹配之外,正则表达式还有提取子串的强大功能。用()表示的就是要提取的分组(Group)。比如:
^(\d{3})-(\d{3,8})$分别定义了两个组,可以直接从匹配的字符串中提取出区号和本地号码:
1 2 3 4 5 6 7 8 9 |
|
如果正则表达式中定义了组,就可以在Match对象上用group()方法提取出子串来。
注意到group(0)永远是原始字符串,group(1)、group(2)……表示第1、2、……个子串。
提取子串非常有用。来看一个更凶残的例子:
1 2 3 4 5 |
|
这个正则表达式可以直接识别合法的时间。但是有些时候,用正则表达式也无法做到完全验证,比如识别日期:
1 |
|
对于'2-30','4-31'这样的非法日期,用正则还是识别不了,或者说写出来非常困难,这时就需要程序配合识别了。
以上就是本篇文章所讲述的所有内容,这篇文章主要介绍了相关于python中正则表达式的知识,希望你能借助资料从而理解上述所说的内容。希望我在这片文章所讲述的内容能够对你有所帮助,让你学习python更加轻松。
更多相关知识,请访问php中文网Python教程栏目。
以上就是python之中正则表达式详解(实例分析)的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
vscode编写第一个Python程序helloworld步骤_Python
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。