【发布时间】:2019-12-31 14:03:12
【问题描述】:
我有一列包含不同类型的日期,例如:
2\06\1998
21.11.1998
18-02-2001
03/05/1999
20 july 1999
我只想要年份。
我尝试了不同类型的正则表达式,例如:
def get_date(date):
number= re.findall('\[0-9]\-{0,1}\\{0,1}\/{0,1}\[0-9]\-{0,1}\\{0,1}\/{0,1}\[0-9]', date)
return number[6:]
但我无法提取年份。 这种情况下最合适的正则表达式是什么? 做两种类型的正则表达式不是问题,一种用于格式 dd/mm/yyyy,另一种用于带有月份字母的日期。
【问题讨论】:
-
col.str[-4:]? -
尝试找到一个有 4 位数字的零件,例如:re.findall(r'\d{4}', date)
-
df.col_name.str[-4:]
-
@MarkWang 输入
'2019/08/27' -
@Anup 见上文