如何用js正则去除不全是数字的字符串里面多余的小数点

CPU:4.0核;内存:8.0G;

希望输出 CPU:4核;内存:8G;

1.0M

希望输出 1M;

阅读 5.5k
5 个回答
'CPU:4.0核;内存:8.05G;'.replace(/\d+\.\d+/g,function(num){
    return parseFloat(num)
})
或者
'CPU:4.0核;内存:8.05G;'.replace(/\d+\.\d+/g,parseFloat)    

'CPU:4.0核;内存:8.05G;'.replace(/(\d+)\.0+(?=\D)/g, "$1")

clipboard.png

不知道会不会有问题..

str.replace(/(\d+)(\.\d+)/g,"$1")

可以使用正则断言,

'CPU:4.0核;内存:8.0G;'.replace(/(?<=\d+)\.\d+/g, '');

clipboard.png

断言很有意思呢 在上面小哥哥基础上优化了点

var ee ="CPU:4.0核;内存:8.0G;拓展:3.06363G".replace(/(\d+)\.0+\d*(?=\D)/g, "$1")

alert(ee)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题