You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python移除指定日期前内容,转换为SQL日期问题求助

嘿,别着急!作为Python新手,字符串处理确实容易卡壳,我来帮你搞定这个问题~

你的需求是提取出字符串里的“19 May 2012”部分,其实有两种简单的方法:

方法一:用正则表达式(调整你之前的思路就行)

我们可以直接匹配逗号及之前的所有内容,然后替换为空:

import re
original_str = "9 - Saturday, 19 May 2012"
# 匹配从开头到", "的所有内容,替换成空
new_s = re.sub(r'^.*, ', '', original_str)
print(new_s)  # 输出: 19 May 2012

这里的正则^.*, 解释下:

  • ^ 匹配字符串的起始位置
  • .* 贪婪匹配任意数量的字符(会一直匹配到最后一个逗号)
  • , 精准匹配逗号加后面的空格
    把这整段内容替换为空,就刚好留下了你要的日期部分。

方法二:用字符串分割(更简单,不用正则)

因为你的字符串里只有一个逗号,直接用split分割后取后半部分就行:

original_str = "9 - Saturday, 19 May 2012"
# 按逗号分割成两部分,取第二部分并去掉开头的空格
new_s = original_str.split(',')[1].strip()
print(new_s)  # 输出: 19 May 2012

split(',')会把字符串拆成["9 - Saturday", " 19 May 2012"],[1]取后面的部分,strip()去掉开头多余的空格,完美得到目标内容。

额外加分:转换成SQL日期格式

拿到日期字符串后,用datetime模块可以轻松转成SQL支持的YYYY-MM-DD格式:

from datetime import datetime
date_str = "19 May 2012"
# 解析字符串为日期对象
sql_date = datetime.strptime(date_str, "%d %B %Y").date()
print(sql_date)  # 输出: 2012-05-19

这个格式直接就能用于SQL的日期字段啦~

内容的提问来源于stack exchange,提问作者Valek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:10:23