我有一个字符串网址,我只想在#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
有更有效的方法吗?
答案 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 \/
- /
符号。