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

如何用正则表达式提取括号中DOG对应的关联值?

解决正则提取DOG对应关联值的问题

你的原正则表达式\(DOG,*?\)无法正常工作的原因是:它试图匹配(DOG后接任意个逗号(甚至0个),然后直接匹配右括号,但目标字符串里DOG后是,C),逗号后还有字符C,所以这个正则根本匹配不到目标内容。

正确的解决方案

使用带捕获分组的正则表达式,精准定位DOG后的关联值:

Match match = Regex.Match(rspData, @"\(DOG,([^)]+)\)");
if (match.Success)
    Console.WriteLine(match.Groups[1].Value); // 输出结果为C

正则说明

  • \(DOG,:匹配字面量(DOG,,定位到目标项的起始部分
  • ([^)]+):捕获分组,匹配一个或多个非右括号的字符,也就是我们需要的关联值(这里就是C)
  • \):匹配闭合的右括号,确保只匹配(DOG,C)这个完整项

如果你的关联值固定是单个字母,也可以用更精确的\(DOG,([A-Z])\),但[^)]+的通用性更强,能适配关联值为多个字符的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 13:40:24