我有一列由包含日期和时间的字符串组成。日期的格式为:mm/dd/yyyy、m/d/yyyy、m/dd/yyyy 和 mm/d/yyyy 我使用正则表达式帮助我提取 mm/dd/yyyy 和 m/d/yyyy。我无法提取 m/dd/yyyy 和 mm/d/yyyyimport pandas as pdimport redf = pd.read_csv('path of csv file')corpus = []for i in range(0,df.shape[0]): x = df.iloc[i]['OrderTime'] if re.search(r'\d{2}/\d{2}/\d{4}',x): ### for mm/dd/yyyy y= re.findall(r'\d{2}/\d{2}/\d{4}',x) corpus.append(y) elif re.search(r'\d{1}/\d{1}/\d{4}',x): ### for m/d/yyyy y= re.findall(r'\d{1}/\d{1}/\d{4}',x) corpus.append(y) elif re.search(r'\d{1}/\d{2}\d{4}',x): ### for m/dd/yyyy y= re.findall(r'\d{1}/\d{2}/\d{4}',x) corpus.append(y) elif re.search(r'\d{2}/\d{1}\d{4}',x): ### for mm/d/yyyy y= re.findall(r'\d{2}/\d{1}/\d{4}',x) corpus.append(y) else: ### empty cells or says nan y=["00/00/0000"] corpus.append(y)print(corpus)例如 - 日期是 12/1/2017 输出是 2/1/2017(问题与 mm/d/yyyy)对于像 1/10/2018 这样的日期输出是 00/00/0000
添加回答
举报
0/150
提交
取消