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

如何从银行交易短信提取商户名 现有正则无法生效如何修改?

银行短信商户名提取正则调整方案

原正则失效原因

  • 前导匹配逻辑错误:原正则非捕获组(?:\\sInfo.\\s*)要求Info字段后必须存在空白字符,但测试短信中Info:后直接拼接商户名称,无空白间隔,导致前缀匹配失败
  • 商户名匹配规则过严:原捕获组仅支持最多2段字符、1个可选空格的格式,无法适配多单词组成的商户名,字符覆盖范围也不足以匹配常见商户名格式

调整后正则(Java语法)

Pattern.compile("(?i)(?:\\sInfo:)([A-Za-z0-9\\s]+)(?=\\.)");

规则说明

  • 保留(?i)大小写不敏感匹配规则
  • 非捕获组(?:\\sInfo:)精准匹配短信中的固定前缀Info:,适配实际短信格式
  • 捕获组([A-Za-z0-9\\s]+)支持匹配由字母、数字、空格组成的多单词商户名
  • 正向预查(?=\\.)自动在后续第一个英文句号位置截断,排除Avbl等无关内容

适配效果

针对提供的测试短信执行匹配后,捕获组1的输出结果为GOOGLE CLOUD,完全符合提取要求。
如果需要兼容带*、-等特殊字符的商户名,可以将捕获组规则调整为([A-Za-z0-9*\\-\\s]+)即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 04:09:03