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

如何构建正则表达式将heat1、heat2名称分别匹配至分组1、分组2?

解决heat1/heat2对应名称分捕获组的正则方案

嘿,我懂你现在的麻烦——想把heat1对应的名称精准放进分组1,heat2的放进分组2,但目前的正则把两个名字归到同一个分组里了。咱们来一步步解决这个问题!

情况1:heat1和heat2在同一段文本中

如果你的输入文本是类似 heat1: ALEX, some random text, heat2: RYAN 这种结构,用下面的正则就能分别捕获两个名称:

heat1: (\w+).*?heat2: (\w+)
  • heat1: (\w+):匹配heat1标签,同时把后面的名称(这里用\w+匹配字母数字下划线,根据你的实际需求可以换成[^,]+这类更精准的规则)捕获到分组1
  • .*?:非贪婪匹配任意字符,避免跳过heat2标签直接匹配到文本末尾
  • heat2: (\w+):匹配heat2标签,把对应的名称捕获到分组2

情况2:heat1和heat2各占一行

如果你的文本是每行一个标签的格式,比如:

heat1: ALEX
heat2: RYAN

可以启用多行模式(不同工具里对应m标志),用分支匹配的正则:

^heat1: (\w+)$|^heat2: (\w+)$
  • ^heat1: (\w+)$:匹配以heat1开头的整行,捕获名称到分组1
  • |:分支符,匹配任意一边的规则
  • ^heat2: (\w+)$:匹配以heat2开头的整行,捕获名称到分组2

为什么之前的方案会混分组?

大概率你之前用了类似 heat(1|2): (\w+) 的正则——这个写法里,不管是heat1还是heat2,名称都会被统一捕获到分组2,而分组1存的是1或2。咱们分开写各自的捕获组,就能让两个名称分别进对应的分组啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 07:48:32