gpt4 book ai didi

javascript - 正则表达式从字符串中提取所有实数

转载 作者:行者123 更新时间:2023-11-28 20:00:23 25 4
gpt4 key购买 nike

JavaScript 中的这个正则表达式仅返回给定字符串中的第一个实数,我期望一个包含两个的数组,因为我使用的是/g。我的错误在哪里?

/[-+]?[0-9]*\.?[0-9]+/g.exec("-8.075090 -35.893450( descr)")

返回:

["-8.075090"]

最佳答案

试试这个代码:

var input = "-8.075090 -35.893450( descr)";
var ptrn = /[-+]?[0-9]*\.?[0-9]+/g;
var match;
while ((match = ptrn.exec(input)) != null) {
alert(match);
}

演示

http://jsfiddle.net/kCm4z/

讨论

exec 方法仅返回第一个匹配项。必须重复调用它,直到返回 null 才能获取所有匹配项。

或者,正则表达式可以这样写:

/[-+]?\d*\.?\d+/g

关于javascript - 正则表达式从字符串中提取所有实数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21750969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com