获取字符串中的数字并存为数组

获取字符串中的数字,只保留两位小数并去重,且能够取到正负数,百分数

function getNum(str) {
      let arr = []
      arr = str.match(/(\-)?\d+(.\d+)?/gi)
      //正则匹配数字的规则
      for (let i = 0; i < arr.length; i++) {
        arr[i] = Math.floor(arr[i] * 100) / 100
        //只取小数后两位,满5不进位
      }
      arr = [...new Set(arr)]
      //set方法配合解构赋值(...)去重
      console.log(arr)
    }
    
var str = "今年财政收入22.96亿元,人均消费12.46千元,人均收入22.9655千元,同比增长22.3%,增长率-2%,调查人数22000.+1000"
getNum(str)	//输出结果:[22.96, 12.46, 22.3, -2, 22000, 1000]


版权声明:本文为weixin_47953779原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。