使用javascript,我需要从这个字符串中提取数字:
[stuff ids="7,80"]
并且字符串可以包含一到五组数字,用逗号分隔(每组有一个或多个数字),需要提取到数组中。
我试过了:
var input = '[stuff ids="7,80"]';
var matches = input.match(/ids="(\d*),(\d*)"/);
这会给我一个包含7和80的数组(我认为),但是我如何进一步采用这个数据,如果有两个以上(或少于两个),它将返回所有数字?< / p>
此外,这甚至是最好的解决方法吗?
感谢您的帮助!
答案 0 :(得分:7)
var numbers = '[stuff ids="7,80"]'.match(/\d+/g);
\d+
匹配任何连续数字(数字),g
修饰符指示匹配所有
PS:万一你需要匹配负数:
var numbers = '[stuff ids="-7,80"]'.match(/-?\d+/g);