Python时间的精准正则匹配方法分析


Posted in Python onAugust 17, 2017

本文实例讲述了Python时间的精准正则匹配方法。分享给大家供大家参考,具体如下:

要用正则表达式精准匹配时间,其实并不容易

方式一:

>>> import re
>>> t = '19:10:48'
>>> m = re.match(r'(.*):(.*):(.*)', t)
>>> m.groups()
('19', '10', '48')

方式二:

>>> t = '19:10:48'
>>> m = re.match(r'(\d{2}):(\d{2}):(\d{2})', t)
>>> m.groups()
('19', '10', '48')

比如上面的并不能精准匹配,比如说, 24:61:61显然不符合要求。

时(H), 0-23
分(M), 0-59
秒(S), 0-59
小时的精准匹配如下:  0?[0-9]|1[0-9]|2[0-3]
分钟的精准匹配如下:  0?[0-9]|[1-5][0-9]
秒钟的精准匹配如下:  0?[0-9]|[1-5][0-9]

完整的正则匹配就是:

>>> t = '23:59:08'
>>> p = re.compile(r'^(0?[0-9]|1[0-9]|2[0-3]):(0?[0-9]|[1-5][0-9]):(0?[0-9]|[1-5][0-9])$')
>>> s = p.search(t)
>>> s.groups()
('23', '59', '08')
Python 相关文章推荐
详谈Python2.6和Python3.0中对除法操作的异同
Apr 28 Python
Python数据结构之单链表详解
Sep 12 Python
深入理解Python单元测试unittest的使用示例
Nov 18 Python
python3学习之Splash的安装与实例教程
Jul 09 Python
Django-Model数据库操作(增删改查、连表结构)详解
Jul 17 Python
Python模块的制作方法实例分析
Dec 21 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
Feb 18 Python
Python numpy多维数组实现原理详解
Mar 10 Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
Mar 24 Python
Django Xadmin多对多字段过滤实例
Apr 07 Python
python框架flask入门之环境搭建及开启调试
Jun 07 Python
python实现发送邮件
Mar 02 Python
Python实现运行其他程序的四种方式实例分析
Aug 17 #Python
python进阶_浅谈面向对象进阶
Aug 17 #Python
Python 比较两个数组的元素的异同方法
Aug 17 #Python
python使用opencv读取图片的实例
Aug 17 #Python
CentOS下使用yum安装python-pip失败的完美解决方法
Aug 16 #Python
python3.4下django集成使用xadmin后台的方法
Aug 15 #Python
Django 如何获取前端发送的头文件详解(推荐)
Aug 15 #Python
You might like
php实现斐波那契数列的简单写法
2014/07/19 PHP
PHP如何通过AJAX方式实现登录功能
2015/11/23 PHP
PHP url的pathinfo模式加载不同控制器的简单实现
2016/08/12 PHP
PHP使用Curl实现模拟登录及抓取数据功能示例
2018/04/27 PHP
Laravel 实现添加多语言提示信息
2019/10/25 PHP
JavaScript While 循环基础教程
2007/04/05 Javascript
Jquery异步请求数据实例代码
2011/12/28 Javascript
firefox下jquery ajax返回object XMLDocument处理方法
2014/01/26 Javascript
点击显示指定元素隐藏其他同辈元素的方法
2014/02/19 Javascript
浅谈jQuery事件绑定原理
2015/01/02 Javascript
js+css实现导航效果实例
2015/02/10 Javascript
使用javascript实现判断当前浏览器
2015/04/14 Javascript
JS建造者模式基本用法实例分析
2015/06/30 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
javascript读取文本节点方法小结
2016/12/15 Javascript
js实现年月日表单三级联动
2020/04/17 Javascript
elemetUi 组件--el-upload实现上传Excel文件的实例
2017/10/27 Javascript
JsChart组件使用详解
2018/03/04 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
在Vue项目中用fullcalendar制作日程表的示例代码
2019/08/04 Javascript
vue制作抓娃娃机的示例代码
2020/04/17 Javascript
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
[02:14]2016国际邀请赛中国区预选赛Ehome晋级之路
2016/07/01 DOTA
python3编写C/S网络程序实例教程
2014/08/25 Python
详解Python命令行解析工具Argparse
2016/04/20 Python
怎么解决pycharm license Acti的方法
2020/10/28 Python
巴西最大的玩具连锁店:Ri Happy
2020/06/17 全球购物
Myprotein亚太地区:欧洲第一在线运动营养品牌
2020/12/20 全球购物
大学生职业生涯规划书范文
2014/01/14 职场文书
幼儿园元旦家长感言
2014/02/27 职场文书
俞敏洪北大演讲稿
2014/05/22 职场文书
投标承诺函格式
2015/01/21 职场文书
2015年中学团委工作总结
2015/07/22 职场文书
六一儿童节致辞
2015/07/31 职场文书
2016年寒假见闻
2015/10/10 职场文书
浅谈Redis在直播场景的实践方案
2021/04/27 Redis