目录

工欲善其事

实践出真知

活跃标签: linux java mysql 待分类 js springboot win10 电路 vue macOS nginx esp32 windows git docker idea maven esp8266 python Arduino

存档:

X

[ js ] 字符串中提取数字

强制类型转换

适用于要提取的数字在字符串的前端.

let str = "1412.123abd"
console.log(parseInt(str),parseFloat(str)); // 输出1412  1412.123

遍历拼接

缺点:获取所有的数字,即使是不需要的数字段也会被拼接. 这里是用parseInt(i)>=0判断是否为数字,若使用isNaN(),会把空字符串和空格当做0处理.

let str="%1086143iluhugufu086";
let num="";
for(i of str){
    if(parseInt(i)>=0){      //parseInt返回的是数字或者NAN,只要大于0,即使数字
       num += i;
    }
}
console.log(num);           // 1086143086 会拼接所以的数字

正则表达式

let str ="%1086143iluhugufu086";
let num= str.replace(/[^0-9]/ig,"");
let numArr = str.match(/\d+/g);
let decimalArr = str.match(/\d+\.\d+/g);    // 匹配小数
console.log(num);           // 1086143086
console.log(numArr);        // [ '1086143', '086' ]
console.log(decimalArr);    // ["123.456", "456.789"]

标题:[ js ] 字符串中提取数字
作者:llilei
地址:http://solo.llilei.work/articles/2023/10/31/1698737300575.html