Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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/regex/20.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/7/user-interface/2.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,在Rails应用程序中的JavaScript函数中,我试图获取配方的id。像这样查看事件对象内部 e.delegateTarget.baseURI 生成uri,其最后一个数字(在正斜杠之后)是我想要的id http://myroute.com/users/2/recipes/6 当然,这个id在将来可能会更长,所以我需要能够得到最后一个正斜杠后的所有数字 我试图通过这种方式获得最后一个身份证 var uri = e.delegateTarget.baseURI var re = /^(.*

在Rails应用程序中的JavaScript函数中,我试图获取配方的id。像这样查看事件对象内部

 e.delegateTarget.baseURI
生成uri,其最后一个数字(在正斜杠之后)是我想要的id

http://myroute.com/users/2/recipes/6
当然,这个id在将来可能会更长,所以我需要能够得到最后一个正斜杠后的所有数字

我试图通过这种方式获得最后一个身份证

var uri = e.delegateTarget.baseURI
var re = /^(.*[\\\/\d])/;
var recipe_id = uri.match(re);

匹配的斜杠应该是最后一个,因为。*贪婪地匹配,然后我查找任何数字。这是完全错误的。我对正则表达式不是很有经验。您能帮忙吗?

一个非常简单的方法是使用string.split()

编辑:

使用返回弹出值的.pop()方法更容易

就像埃尔克兰斯说的

var uri = e.delegateTarget.baseURI,
    recipe_id = uri.split('/').pop();

您应该使用特殊字符
$
,这意味着输入结束:

re = /\d+$/; //matches one or more digits from the end of the input

是一个很好的JavaScript正则表达式资源。

url.split('/').pop()
?是的。我想如果在最后一个正斜杠后预期的不仅仅是数字,那么doing.split(“/”).pop()看起来更优雅。
re = /\d+$/; //matches one or more digits from the end of the input