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

如何用正则表达式提取字符串中***包裹的所有子串?

使用Python正则表达式提取特定模式的子串

你可以直接用Python的re模块的findall方法一次性提取所有符合***内容***模式的子串,代码简洁高效:

import re

string = "{\huge \centering \bf{RAPPORT JOURNALIER \\ ***bouee*** \\ \formatDate{***day***}{***month***}{***year***}} \\ \small generated on~\today~at~\currenttime \par}"
result = re.findall(r'\*\*\*(.*?)\*\*\*', string)
print(result)  # 输出: ['bouee', 'day', 'month', 'year']

正则表达式说明

  • \*\*\*:匹配开头的三个星号,星号是正则特殊字符,用反斜杠转义后表示匹配字面量星号
  • (.*?):非贪婪捕获组,.*?会匹配任意字符(默认不含换行),非贪婪模式确保它只会匹配到最近的一组***就停止,避免过度匹配
  • \*\*\*:匹配结尾的三个星号

如果目标字符串包含换行符,需要给findall加上re.DOTALL参数,让.能匹配换行:

result = re.findall(r'\*\*\*(.*?)\*\*\*', string, flags=re.DOTALL)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 09:35:23