【发布时间】:2018-06-19 04:34:41
【问题描述】:
我试图只从字符串的开头获取数字。
我有以下代码从字符串中获取数字和文本。
var unitData = '(135 g)' // it may be 0.135 or .135
var unitValue = Number(unitData.match(/.?\d+\.?\d*/).toString());
var unitName = unitData.match(/[A-Za-z]+/g) || '';
console.log(unitValue);
console.log(unitName);
它为unitValue 提供NaN。如果数字在字符串的第一个位置,它工作正常。
【问题讨论】:
-
你为什么不检查你的
unitData.match(/.?\d+\.?\d*/)返回什么? -
(135不是数字,所以它是正确的行为
标签: javascript regex match