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

如何从段落文本中正确提取float浮点数 解决9.5被识别为95的问题

问题原因

你使用的正则/[^0-9]/gi会把所有非数字的字符全部清除,目标数值9.5中的小数点.也会被删掉,处理后得到的字符串是95,转换为浮点数后自然得到错误结果。

解决方案

调整正则规则,把小数点也加入保留范围即可,修改后的代码如下:

$('p.text-decoration').on('click',function(){
      // 正则调整为保留数字和小数点
      var getTxtNum = $(this).text().replace(/[^0-9.]/g, '')
      var getFloatNum = parseFloat(getTxtNum)
      $('input.items_number').val(getFloatNum)
      console.log('test'+getFloatNum)                                               
  })

修改后点击段落,输入框就会正确填入9.5。
如果你的使用场景中可能出现多个小数点的异常情况,还可以额外加一层格式校验,避免解析出错:

$('p.text-decoration').on('click',function(){
      var getTxtNum = $(this).text().replace(/[^0-9.]/g, '')
      // 匹配仅包含一个小数点的合法浮点数格式
      var matchRes = getTxtNum.match(/\d+\.\d+/)
      var getFloatNum = matchRes ? parseFloat(matchRes[0]) : 0
      $('input.items_number').val(getFloatNum)
      console.log('test'+getFloatNum)                                               
  })

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 13:27:02