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

如何用正则提取欧元金额与首个全大写单词之间的文本内容

你可以通过组合匹配规则、非贪婪捕获实现需求,完全适配你已有的欧元金额、全大写单词匹配逻辑:

最终正则表达式

兼容Python标准re库的写法(无需第三方正则库):

r'\€[+-]?(?:[0-9]*[,])?[0-9]+\s*(.*?)\s*\b[A-Z]+(?:\s+[A-Z]+)*\b'

如果你的场景中欧元金额前不带€符号,删除正则开头的\€即可。

规则说明

  • 开头部分匹配你定义的欧元金额格式,作为提取的起始边界
  • \s*匹配金额后的所有空白字符,避免提取结果开头带多余空格
  • (.*?)非贪婪捕获中间的目标文本,是你需要的核心内容
  • 后续的\s*匹配首个全大写单词前的所有空白字符,避免提取结果结尾带多余空格
  • 结尾部分匹配你定义的全大写单词格式,作为提取的结束边界,非贪婪规则会自动停在第一个匹配到的全大写单词位置

Python 调用示例

import re

# 测试文本
test_str = "€10,95 Hello how are you doing? good or, bad? WORD "
# 正则规则
pattern = r'\€[+-]?(?:[0-9]*[,])?[0-9]+\s*(.*?)\s*\b[A-Z]+(?:\s+[A-Z]+)*\b'

result = re.search(pattern, test_str)
if result:
    print(result.group(1))
    # 输出结果:Hello how are you doing? good or, bad?

内容的提问来源于stack exchange,提问作者Gerard B.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:00:00