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

如何编写正则表达式提取字符串首尾字母及指定格式日期片段

正则实现方案

直接使用以下正则即可完成需求:

^([A-Za-z]):\\.*?(\d{2}-\d{2}-\d{4})([A-Za-z])\.[^.]+$

三个捕获组分别对应你需要提取的内容:

  • 组1:路径开头的盘符首字母(对应示例里的Q)
  • 组2:复用你原本的匹配规则,抓取XX-XX-XXXX格式的日期串(对应示例里的02-01-1716)
  • 组3:日期之后、文件扩展名之前的尾字母(对应示例里的A)

匹配完成后,按照$1: $2$3的格式拼接捕获结果,就能直接得到Q: 02-01-1716A的目标输出。

转义说明

在Python、Java这类需要对字符串反斜杠做转义的语言中,正则要写成转义后的形式,Python下的调用示例:

import re
test_path = r"Q:\Region01s\FY 02\02-01-1716A.pdf"
reg = r"^([A-Za-z]):\\.*?(\d{2}-\d{2}-\d{4})([A-Za-z])\.[^.]+$"
res = re.match(reg, test_path)
if res:
    output = f"{res.group(1)}: {res.group(2)}{res.group(3)}"
    print(output) # 打印结果:Q: 02-01-1716A

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 21:54:52