如何用Python直接拆分日期字符串生成两个独立日期输出
Python实现日期范围拆分
这里提供两种纯Python方案,直接从输入字符串中拆分出两个目标日期:
方案一:使用字符串操作(直观易懂)
input_str = "November (5th-26th)" # 拆分出月份和括号内的日期部分 month_part, date_part = input_str.split("(", 1) month = month_part.strip() # 移除右括号并拆分起始/结束日期 start_day, end_day = date_part.replace(")", "").split("-") # 组合成最终日期字符串 start_date = f"{month} {start_day}" end_date = f"{month} {end_day}" print(start_date) # 输出:November 5th print(end_date) # 输出:November 26th
方案二:使用正则表达式(适配更多格式)
如果后续输入格式有变化(比如月份后空格调整、括号内格式微调),正则表达式的适配性更强:
import re input_str = "November (5th-26th)" # 匹配月份、起始日期、结束日期的正则模式 pattern = r"(\w+) \((\w+)-(\w+)\)" match_result = re.match(pattern, input_str) if match_result: month = match_result.group(1) start_day = match_result.group(2) end_day = match_result.group(3) start_date = f"{month} {start_day}" end_date = f"{month} {end_day}" print(start_date) # 输出:November 5th print(end_date) # 输出:November 26th
内容的提问来源于stack exchange,提问作者Fahad Sheji
相关产品推荐
相关产品推荐

