我正在尝试使用正则表达式在两个日期之间获取所有日志文件。
我当前的表达是^logfile-?('20120101')
。
From是“20120101”,结尾是“20120131”。
找到特定的日志文件没问题,我在定义日间条件时遇到问题。
答案 0 :(得分:0)
您可以使用此:
import datetime
PSD = datetime.datetime(2019, 7, 1)
PED = datetime.datetime(2019, 7, 31)
dateDelta = (PED-PSD).days
STR = '{'
for date in range(dateDelta+1):
focusedDate = PSD + datetime.timedelta(date)
STR += focusedDate.strftime("%Y/%m/%d") + ','
STR = STR[:-1] + "}"
print(STR)
,结果将如下所示:
{2019/07/01,2019/07/02,2019/07/03,2019/07/04,2019/07/05,2019/07/06,2019/07/07,2019/07/08,2019/07/09,2019/07/10,2019/07/11,2019/07/12,2019/07/13,2019/07/14,2019/07/15,2019/07/16,2019/07/17,2019/07/18,2019/07/19,2019/07/20,2019/07/21,2019/07/22,2019/07/23,2019/07/24,2019/07/25,2019/07/26,2019/07/27,2019/07/28,2019/07/29,2019/07/30,2019/07/31}
答案 1 :(得分:-1)
对于正则表达式的日期部分,搜索201201\d\d
就足够了。这将匹配从“20120100”到“20120199”的每个字符串,因此它将匹配1月份的每一天。
所以可能会这样做:^logfile-(201201\d\d)
如果你想将它减少到同一个月的特定时期(例如7月7日至7月21日),那么它可能如下所示:
201207(0[7-9]|1[0-9]|2[0-1])