提取日期前的处理
1.处理文本数据的日期格式统一化
?
|
1
2
3
4
5
|
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()
|
?
|
1
2
3
4
5
6
7
8
|
# 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.对其进行封装
?
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
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
|
?
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
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 正则表达式获取字符串中所有的日期和时间,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对快网idc网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
相关文章
猜你喜欢
- 个人网站搭建:如何挑选具有弹性扩展能力的服务器? 2025-06-10
- 个人服务器网站搭建:如何选择适合自己的建站程序或框架? 2025-06-10
- 64M VPS建站:能否支持高流量网站运行? 2025-06-10
- 64M VPS建站:怎样选择合适的域名和SSL证书? 2025-06-10
- 64M VPS建站:怎样优化以提高网站加载速度? 2025-06-10
TA的动态
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
您的支持,是我们最大的动力!
热门文章
-
2025-05-25 24
-
2025-05-25 82
-
2025-05-25 76
-
2025-05-25 32
-
Elementor和Beaver Builder页面编辑器哪个好用?
2025-05-25 36
热门评论

