Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从字符串的末尾到破折号获取一个数字_Javascript_Regex - Fatal编程技术网

Javascript 从字符串的末尾到破折号获取一个数字

Javascript 从字符串的末尾到破折号获取一个数字,javascript,regex,Javascript,Regex,我有URL,我需要获取id,它位于字符串的末尾。URL正在查找此/questions/M%C3%A4rkte+que+sentra-361433。我要去冲刺的最后一个号码。 我试图使用这个表达式,但它能抓住所有的数字 let str = 'questions/M%C3%A4rkte+que+sentra-361433'; let id = str.replace(/[^0-9]/g,''); 在这个具体的例子中,我得到了34361433,但使用正则表达式应该是361433: let str =

我有URL,我需要获取id,它位于字符串的末尾。URL正在查找此/questions/M%C3%A4rkte+que+sentra-361433。我要去冲刺的最后一个号码。 我试图使用这个表达式,但它能抓住所有的数字

let str = 'questions/M%C3%A4rkte+que+sentra-361433';
let id = str.replace(/[^0-9]/g,'');
在这个具体的例子中,我得到了34361433,但使用正则表达式应该是361433:

let str = 'questions/M%C3%A4rkte+que+sentra-361433';
let id = str.match(/(?:-)(\d+)$/)[1];
console.log(id);
另一种不使用正则表达式的方法,如果适用于您:

let str = 'questions/M%C3%A4rkte+que+sentra-361433';
let splitted = str.split('-');
let id = splitted[splitted.length - 1];
console.log(id);

第一个选择奏效了!谢谢!