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

求助:可提取@(含其后空格)后decimal number的regex实现

提取@后十进制数的Regex实现

可直接复用的正则表达式:

@\s*([+-]?\d+(?:\.\d+)?)

匹配逻辑拆解

  • @:匹配字面@符号,该字符在正则语法中无特殊语义,无需转义
  • \s*:匹配@符号后任意数量的空白字符(支持0个、1个或多个空格、制表符),完全覆盖“@后附带空格”的场景要求
  • 括号():定义捕获组,专门存储需要提取的小数内容,避免提取结果包含@符号和前置空白
  • [+-]?:可选匹配正负号,适配带符号的小数场景,若不需要匹配正负数值可直接删除该段
  • \d+(?:\.\d+)?:匹配标准十进制数字结构:优先匹配至少1位数字作为整数部分,再可选匹配小数点+至少1位数字的小数部分,不会误匹配零散的小数点、无意义的孤立符号

效果验证

测试输入字符串:hello I am a @ 23.43 string
执行匹配后读取第一捕获组内容,即可得到目标结果23.43

使用提示

  • 注意:不要直接读取正则的完整匹配结果,完整匹配会包含@符号和前置空白字符,仅需提取第一捕获组的内容即可
  • 如果需要避免匹配到和其他数字粘连的场景,可在捕获组前增加单词边界\b,调整为@\s*\b([+-]?\d+(?:\.\d+)?),提升匹配精准度

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.23 22:36:03