正则表达式模式,用于在URL末尾的正斜杠之间获取数字

时间:2016-08-26 07:19:54

标签: regex

我有一个字符串网址,我只想在#34; pokemon /"之间的最后抓一个数字。和" /"。

" http://pokeapi.co/api/v2/pokemon/1/"

到目前为止,我有这个 -

var regexPat = /\/d+\//
"http://pokeapi.co/api/v2/pokemon/1/".match(regexPat)[0].slice(1,2) // returns 1

有更有效的方法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用/\/pokemon\/(\d+)\//正则表达式

捕获值

var s = "http://pokeapi.co/api/v2/pokemon/1/";
var m = s.match(/\/pokemon\/(\d+)\//);
if (m) {
  console.log(m[1]);
}
// or 
console.log( 
  (res="http://pokeapi.co/api/v2/pokemon/1/".match(/\/pokemon\/(\d+)\//)) ? res[1] : ""
);

<强>详情:

  • \/pokemon\/ - 文字/pokemon/
  • (\d+) - 捕获与1个或多个数字匹配的组1
  • \/ - /符号。