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实现逆波兰计算表达式实例详解
May 06 Python
Python实现大文件排序的方法
Jul 10 Python
python中json格式数据输出的简单实现方法
Oct 31 Python
Python设计模式之命令模式简单示例
Jan 10 Python
快速了解Python相对导入
Jan 12 Python
详解python中的hashlib模块的使用
Apr 22 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 Python
详解使用django-mama-cas快速搭建CAS服务的实现
Oct 30 Python
Django 实现外键去除自动添加的后缀‘_id’
Nov 15 Python
Tensorflow轻松实现XOR运算的方式
Feb 03 Python
python encrypt 实现AES加密的实例详解
Feb 20 Python
Django rest framework如何自定义用户表
Jun 09 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
多重?l件?合查?(一)
2006/10/09 PHP
PHP通过header实现文本文件下载的代码
2010/08/08 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
微信支付开发订单查询实例
2016/07/12 PHP
Linux基于php-fpm模式的lamp搭建phpmyadmin的方法
2018/10/25 PHP
发两个小东西,ASP/PHP 学习工具。 用JavaScript写的
2007/04/12 Javascript
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
javascript 密码强弱度检测万能插件
2009/02/25 Javascript
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
原生js实现shift/ctrl/alt按键的获取
2013/04/08 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
JS iFrame加载慢怎么解决
2016/05/13 Javascript
微信小程序 数据封装,参数传值等经验分享
2017/01/09 Javascript
jQuery点击弹出层弹出模态框点击模态框消失代码分享
2017/01/21 Javascript
微信小程序自定义select下拉选项框组件的实现代码
2018/08/28 Javascript
对类Vue的MVVM前端库的实现代码
2018/09/07 Javascript
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
使用VueCli3+TypeScript+Vuex一步步构建todoList的方法
2019/07/25 Javascript
Python的Django框架中的select_related函数对QuerySet 查询的优化
2015/04/01 Python
Python连接mysql数据库的正确姿势
2016/02/03 Python
python中实现字符串翻转的方法
2018/07/11 Python
Python将8位的图片转为24位的图片实现方法
2018/10/24 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
使用 Python ssh 远程登陆服务器的最佳方案
2020/03/06 Python
python能否java成为主流语言吗
2020/06/22 Python
浅谈keras中loss与val_loss的关系
2020/06/22 Python
Python如何在单元测试中给对象打补丁
2020/08/03 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
Peter Alexander新西兰站:澳大利亚领先的睡衣设计师品牌
2016/12/10 全球购物
市场部专员岗位职责
2013/11/30 职场文书
交通安全寄语大全
2014/04/08 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB
浅谈Python3中datetime不同时区转换介绍与踩坑
2021/08/02 Python
Python使用Web框架Flask开发项目
2022/06/01 Python