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 相关文章推荐
Python简单操作sqlite3的方法示例
Mar 22 Python
Pandas探索之高性能函数eval和query解析
Oct 28 Python
python中使用%与.format格式化文本方法解析
Dec 27 Python
pandas.DataFrame.to_json按行转json的方法
Jun 05 Python
Django中日期处理注意事项与自定义时间格式转换详解
Aug 06 Python
详解Python3注释知识点
Feb 19 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
May 18 Python
Python socket 套接字实现通信详解
Aug 27 Python
python网络编程socket实现服务端、客户端操作详解
Mar 24 Python
Python打印特殊符号及对应编码解析
May 07 Python
python安装读取grib库总结(推荐)
Jun 24 Python
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
Apr 06 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学习之简单计算器实现代码
2011/06/09 PHP
Ext面向对象开发实践(续)
2008/11/18 Javascript
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
window.onload追加函数使用示例
2014/03/03 Javascript
node.js实现逐行读取文件内容的代码
2014/06/27 Javascript
javascript中数组方法汇总
2015/07/07 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
2016/12/12 Javascript
微信小程序 图片边框解决方法
2017/01/16 Javascript
jQuery插件zTree实现获取一级节点数据的方法
2017/03/08 Javascript
node.js 中间件express-session使用详解
2017/05/20 Javascript
vue移动端使用canvas签名的实现
2020/01/15 Javascript
JavaScript实现10秒后再次获取验证码
2020/12/02 Javascript
python冒泡排序算法的实现代码
2013/11/21 Python
Python如何读取MySQL数据库表数据
2017/03/11 Python
在PyCharm中三步完成PyPy解释器的配置的方法
2018/10/29 Python
python如何查看微信消息撤回
2018/11/27 Python
Python实现将HTML转成PDF的方法分析
2019/05/04 Python
简单了解Django ContentType内置组件
2019/07/23 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
flask的orm框架SQLAlchemy查询实现解析
2019/12/12 Python
利用setuptools打包python程序的方法步骤
2020/01/18 Python
Django 解决model 反向引用中的related_name问题
2020/05/19 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
2021/01/28 Python
SpringBoot首页设置解析(推荐)
2021/02/11 Python
使用HTML5 Canvas API中的clip()方法裁剪区域图像
2016/03/25 HTML / CSS
HTML5新增加标签和功能概述
2016/09/05 HTML / CSS
The North Face北面德国官网:美国著名户外品牌
2018/12/12 全球购物
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
竞争上岗演讲稿范文
2014/05/12 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
个人党性锻炼总结
2015/03/05 职场文书
TypeScript中条件类型精读与实践记录
2021/10/05 Javascript
Python 避免字典和元组的多重嵌套问题
2022/07/15 Python