如何在Javascript中获得Regexp匹配的第二次出现

How to get the second occurrence of a Regexp match in Javascript

本文关键字:第二次 Regexp Javascript      更新时间:2023-09-26

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

http://maps.apple.com/?lsp=9902&sll=-43.575285172.762549

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

只对第一个值有效,匹配器有没有办法继续搜索结果字符串并给我第二个模式出现?

p.S我记得ruby有$1-$9来引用发生。

g标志添加到末尾。。。

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

g适用于全局

var matches = str.match(re);

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

var in="http://maps.apple.com/?lsp=9902&sll=-43.575285,172.762549";
var res=in.match(-?'d+'.'d{6}/g);

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

res[1]

会帮你拿到的。