Javascript字符串:删除除数字和第一个"

javascript string: remove all except numbers and the first "."

本文关键字:第一个 quot 数字 字符串 删除 Javascript      更新时间:2023-09-26

例如:

10.0。Cm "转到"10.0"

10.0。M "转到"10.0"

"3"保持"3"

等等……

我试过了:

values[3].replace(/[^0-9.,]+/, '')

,但这仍然在数字后面留下"。",例如:10.0.

下面的正则表达式应该可以解决

values[3].replace(/'.+[a-z]*$/, '')

var values = ["10.0.cm", "10.0.m", "3"];
var patten = /'d+('.'d+)?/g;
for (var i = 0; i < values.length; i++) {
    console.info(values[i].match(patten));
}

您所描述的问题不是简单的"在字符串中查找数字"

一步完成这个并不容易,因为JavaScript中的RegExp不支持回看。然而

  • 很容易删除所有不是数字或.的字符
  • 字符串
  • 中查找特定字符非常容易创建一个字符串非常简单
var str = 'foo_1.0.bar.1.2.xyz';
str = str.replace(/[^'d'.]/g, '').split('.');
str = str[0] ? str[0] + '.' + str.slice(1).join('') : '';
str; // "1.012"