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

如何用Python正则表达式提取点到冒号间的指定子串

Python正则提取目标子串方案

提取My substring2的正则

用非贪婪匹配结合分组,精准捕获目标内容:

  • 正则表达式:r'\.\s(.*?):'
  • Python代码示例:
import re
target_str = 'My substring1. My substring2: My substring3: My substring4'
result = re.search(r'\.\s(.*?):', target_str)
if result:
    print(result.group(1))  # 输出: My substring2

原理:\.\s匹配. ,(.*?)是非贪婪分组,会匹配到第一个:就停止,刚好捕获My substring2。

提取. My substring2:的正则

如果接受包含前后缀的结果,只需把正则改成非贪婪模式:

  • 正则表达式:r'\.\s.*?:'
  • Python代码示例:
import re
target_str = 'My substring1. My substring2: My substring3: My substring4'
result = re.search(r'\.\s.*?:', target_str)
if result:
    print(result.group())  # 输出: . My substring2:

原理:把原正则的.*(贪婪匹配所有内容到最后一个:)改成.*?(非贪婪匹配到第一个:),避免过度匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 15:18:14