工作记录-截取字符串数字部分()

最近在做一个需求的时候,需要用js去截取一个字符串的数字部分,现在有个字符串 格式为’数字+单位’  比如是’10px’、’10%’ , 在单位不知道的情况下,截取数字。

如果已知单位,用split可以截成数组取到。

1.最笨的方法,字符串拆成数组,然后比较再拼接:

const val= '10%'
let num=''
for(let i =0;i<val.length;i++){
    var reg = /1?(\d|([1-9]\d+))(.\d+)?$/;
    if(reg.test(val[i])){
        num=num+val[i]
    }
}
console.log(num)

2.也有最简单的办法,就是直接利用正则进行筛选,推荐使用:

'10%'.match(/\d+/g).join('')
————————

最近在做一个需求的时候,需要用js去截取一个字符串的数字部分,现在有个字符串 格式为’数字+单位’  比如是’10px’、’10%’ , 在单位不知道的情况下,截取数字。

如果已知单位,用split可以截成数组取到。

1.最笨的方法,字符串拆成数组,然后比较再拼接:

const val= '10%'
let num=''
for(let i =0;i<val.length;i++){
    var reg = /1?(\d|([1-9]\d+))(.\d+)?$/;
    if(reg.test(val[i])){
        num=num+val[i]
    }
}
console.log(num)

2.也有最简单的办法,就是直接利用正则进行筛选,推荐使用:

'10%'.match(/\d+/g).join('')