2

使用 javascript,我需要从这个字符串中提取数字:

[stuff ids="7,80"]

并且字符串可以包含一到五组数字,用逗号分隔(每组有 1 个或多个数字)需要提取到数组中。

我试过了:

var input = '[stuff ids="7,80"]';
var matches = input.match(/ids="(\d*),(\d*)"/);

这会给我一个包含 7 和 80 的数组(我认为),但是我该如何进一步处理,以便如果有两个以上(或少于两个),它将返回所有数字?

此外,这甚至是解决此问题的最佳方法吗?

谢谢您的帮助!

4

1 回答 1

7
var numbers = '[stuff ids="7,80"]'.match(/\d+/g);

\d+匹配任何连续的数字(即数字)并且g修饰符告诉匹配所有

PS:如果您需要匹配负数:

var numbers = '[stuff ids="-7,80"]'.match(/-?\d+/g);
于 2013-04-19T02:55:25.203 回答