5

我想从下面的 url 中获取两个字符串,第一个是-43.575285,第二个是172.762549

http://maps.apple.com/?lsp=9902&sll=-43.575285,172.762549

我写了一个正则表达式模式re = /-?\d+\.\d{6}/;

仅适用于第一个值,匹配器有什么方法可以继续搜索结果字符串并给我第二个模式出现?

PS我记得红宝石有$1-$9参考事件。

4

2 回答 2

9

g标志添加到末尾...

re = /-?\d+\.\d{6}/g;

g是针对全球的。

var matches = str.match(re);

请注意,如果您添加捕获组,这将不会像上面那样工作。

于 2013-07-31T04:57:57.240 回答
3
var in="http://maps.apple.com/?lsp=9902&sll=-43.575285,172.762549";

var res=in.match(-?\d+\.\d{6}/g);

现在 res 是一个匹配数组。如果你想要第二个元素,

res[1]

会给你的。

于 2013-07-31T05:06:31.810 回答