鱼C论坛

 找回密码
 立即注册
查看: 1598|回复: 6

[已解决]python中关于去掉某些不需要的字符串

[复制链接]
发表于 2017-11-28 22:50:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
最近在做时间抽取,写的正则匹配,数据格式不标准,时间是五花八门的,如下:
2016年2月5日12时
2016年2月26日
2016年1月21日凌晨1点
2010年8月30号下午6点

现在我想把凌晨/下午去掉,做个时间的归一化。先判断,然后再去掉,该怎么处理呢?现在的抽取出来的时间的type是<type 'unicode'>
最佳答案
2017-11-29 11:15:33
  1. # -*- coding: utf-8 -*-

  2. string='''
  3. 2016年2月5日12时
  4. 2016年2月26日
  5. 2016年1月21日凌晨1点
  6. 2010年8月30号下午6点
  7. '''
  8. import re
  9. # string=string.split("\n")
  10. reg=r"(?:凌晨|下午)(\d)点"

  11. def change(result):
  12.     print(result)
  13.     if "下午" in result.group(0):

  14.         time=int(result.group(1))+12
  15.         return str(time)+"点"
  16.     else:
  17.         return result.group(1)+"点"
  18. a=re.sub(reg,change,string)
  19. print(a)

复制代码

结果:
  1. <_sre.SRE_Match object; span=(35, 39), match='凌晨1点'>
  2. <_sre.SRE_Match object; span=(50, 54), match='下午6点'>

  3. 2016年2月5日12时
  4. 2016年2月26日
  5. 2016年1月21日1点
  6. 2010年8月30号18点
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-11-28 22:55:17 From FishC Mobile | 显示全部楼层
用replace函数将”凌晨“”下午"替换为空,并且将“下午”后面的数字加12即可
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-29 11:15:33 | 显示全部楼层    本楼为最佳答案   
  1. # -*- coding: utf-8 -*-

  2. string='''
  3. 2016年2月5日12时
  4. 2016年2月26日
  5. 2016年1月21日凌晨1点
  6. 2010年8月30号下午6点
  7. '''
  8. import re
  9. # string=string.split("\n")
  10. reg=r"(?:凌晨|下午)(\d)点"

  11. def change(result):
  12.     print(result)
  13.     if "下午" in result.group(0):

  14.         time=int(result.group(1))+12
  15.         return str(time)+"点"
  16.     else:
  17.         return result.group(1)+"点"
  18. a=re.sub(reg,change,string)
  19. print(a)

复制代码

结果:
  1. <_sre.SRE_Match object; span=(35, 39), match='凌晨1点'>
  2. <_sre.SRE_Match object; span=(50, 54), match='下午6点'>

  3. 2016年2月5日12时
  4. 2016年2月26日
  5. 2016年1月21日1点
  6. 2010年8月30号18点
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-30 14:50:24 | 显示全部楼层
编的有点累,求个最佳答案可好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-30 14:50:56 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-11-30 16:09:37 | 显示全部楼层
继续加油吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-10 15:00:24 | 显示全部楼层

出差才回来,追加最佳答案了,么么哒
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 13:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表