python 正则表达式获取字符串中所有的日期和时间

 更新时间:2020-01-15 15:59:35   作者:佚名   我要评论(0)

提取日期前的处理
1.处理文本数据的日期格式统一化


text = "2015年8月31日,衢州元立金属制品有限公司仓储公司(以下简称元立仓储公司)成品仓库发生一起物体打击

提取日期前的处理

1.处理文本数据的日期格式统一化

text = "2015年8月31日,衢州元立金属制品有限公司仓储公司(以下简称元立仓储公司)成品仓库发生一起物体打击事故,造成直接经济损失95万元。"
text1 = "2015/12/28下达行政处罚决定书"
text2 = "2015年8月发生一起物体打击事故"
# 对文本处理一下 # 2015-8-31  2015-12-28
text = text.replace("年", "-").replace("月", "-").replace("日", " ").replace("/", "-").strip()

2.提取时间的正则表达式

# 2019年10月27日 9:46:21
"(\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2})"
# 2019年10月27日 9:46"
"(\d{4}-\d{1,2}-\d{1,2})"
# 2019年10月27日
"(\d{4}-\d{1,2}-\d{1,2})"
# 2019年10月
"(\d{4}-\d{1,2})"

3.对其进行封装

def get_strtime(text):
 text = text.replace("年", "-").replace("月", "-").replace("日", " ").replace("/", "-").strip()
 text = re.sub("\s+", " ", text)
 t = ""
 regex_list = [
 # 2013年8月15日 22:46:21
    "(\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2})",
    # "2013年8月15日 22:46"
    "(\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2})",
    # "2014年5月11日"
    "(\d{4}-\d{1,2}-\d{1,2})",
    # "2014年5月"
    "(\d{4}-\d{1,2})",
 ]
 for regex in regex_list:
 t = re.search(regex, text)
 if t:
  t = t.group(1)
  return t
 else:
 print("没有获取到有效日期")
 
 return t

ps:下面看下python提取字符串中日期

import re
#删除字符串中的中文字符
def subChar(str):
  match=re.compile(u'[\u4e00-\u9fa5]')
  return match.sub('',str)
 
#提取日期
def extractDate(str):
  if not str:
    return None
  raw=subChar(str)
  if not raw:
    return None
  #提取前10位字符
  rawdate=raw[:10]
  datelist=re.findall("\d+",rawdate)
  if not datelist:
    return None
  if datelist.__len__()==3:
    if (float(datelist[0])>2099 or float(datelist[0])<1900) or float(datelist[1])>12 or float(datelist[2])>31:
      return None
    else:
      return '-'.join(datelist)
  if datelist.__len__()==2:
    if (float(datelist[0])>2099 or float(datelist[0])<1900) or float(datelist[1])>12:
      return None
    else:
      datelist.append('01')
      return '-'.join(datelist)
  if datelist.__len__()==1:
    if float(datelist[0])>20991231 or float(datelist[0])<19000101:
      return None
    else:
      return datelist[0]
  return None

总结

以上所述是小编给大家介绍的python 正则表达式获取字符串中所有的日期和时间,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

您可能感兴趣的文章:

  • python 如何去除字符串头尾的多余符号
  • python字符串的拼接方法总结
  • python 怎样将dataframe中的字符串日期转化为日期的方法
  • python字符串替换re.sub()方法解析
  • Python字符串中添加、插入特定字符的方法
  • 使用Python将字符串转换为格式化的日期时间字符串
  • 详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法
  • Python如何使用字符打印照片

相关文章

  • python 正则表达式获取字符串中所有的日期和时间

    python 正则表达式获取字符串中所有的日期和时间

    提取日期前的处理 1.处理文本数据的日期格式统一化 text = "2015年8月31日,衢州元立金属制品有限公司仓储公司(以下简称元立仓储公司)成品仓库发生一起物体打击
    2020-01-15
  • JSP+Servlet实现文件上传到服务器功能

    JSP+Servlet实现文件上传到服务器功能

    本文实例为大家分享了JSP+Servlet实现文件上传到服务器功能的具体代码,供大家参考,具体内容如下 项目目录结构大致如下: 正如我在上图红线画的三个东西:Dao、
    2020-01-15
  • 正则表达式(RegExp)判断文本框中是否包含特殊符号

    正则表达式(RegExp)判断文本框中是否包含特殊符号

    前言 有时,我们希望判断文本框中用户输入的字符是否含有特殊符号(*/#[email protected]),就像用户注册时密码框的填写。 demo 利用 RegExp 对象,能很优雅的实现以上需求: // e
    2020-01-15
  • JSP实现分页效果

    JSP实现分页效果

    本文实例为大家分享了JSP实现分页的具体代码,供大家参考,具体内容如下 咱们在浏览网页的时候,当一个页面的数据不足以展示完全所有的内容,一般都涉及到分页,下一
    2020-01-15
  • JS正则(RegExp)判断文本框中是否包含特殊符号

    JS正则(RegExp)判断文本框中是否包含特殊符号

    前言 有时,我们希望判断文本框中用户输入的字符是否含有特殊符号(*/#[email protected]),就像用户注册时密码框的填写。 demo 利用 RegExp 对象,能很优雅的实现以上需求: // e
    2020-01-15
  • UNIX/LINUX SHELL 正则表达式语法详解附使用方法

    UNIX/LINUX SHELL 正则表达式语法详解附使用方法

    几乎所有重要问题都需要从无用数据中过滤出有用数据。了解大量的 UNIX&#63; 命令行实用工具如何使用正则表达式 来去芜取精。 非常奇怪,直到今天我仍然能重复周六
    2020-01-15
  • jsp filter 过滤器功能与简单用法示例

    jsp filter 过滤器功能与简单用法示例

    本文实例讲述了jsp filter 过滤器功能与简单用法。分享给大家供大家参考,具体如下: 过滤器的作用是什么&#63; 过滤器可以动态地拦截请求和响应,以变换或使用包含在
    2020-01-15
  • jsp 实现的简易mvc模式示例

    jsp 实现的简易mvc模式示例

    本文实例讲述了jsp 实现的简易mvc模式。分享给大家供大家参考,具体如下: jsp : java servlet page MVC全名是Model View Controller,是模型(model)-视图(view)-
    2020-01-15
  • 解决正则表示式匹配($regex)引起的一次mongo数据库cpu占用率高的问题

    解决正则表示式匹配($regex)引起的一次mongo数据库cpu占用率高的问题

    某一天,监控到mongo数据库cpu使用率高了很多,查了一下,发现是下面这种语句引起的: db.example_collection.find({ "idField" : { "$regex" : "1234567890123
    2020-01-15
  • 爱站因侵权问题 被迫关闭

    爱站因侵权问题 被迫关闭

    2020年1月9日知名站长工具爱站网出现了“网站维护中,请稍后访问”,初始很多网友都以为是爱站网临时升级系统导致的,截止今天(2020年1月12日)还没有恢复,目前爱站网官方
    2020-01-13

最新评论