我有这个注册表
var id = url.match(/(\d+)\/\d+$/)[1];
Run Code Online (Sandbox Code Playgroud)
那就是解析网址
http://whatever.com/something/70/48/359
Run Code Online (Sandbox Code Playgroud)
它正在抓住48,但它失败了
http://whatever.com/something/70/48/359#
Run Code Online (Sandbox Code Playgroud)
为什么#搞乱了正则表达式
请尝试使用此正则表达式:
/(\d+)\/\d+(?:$|[?#])/
Run Code Online (Sandbox Code Playgroud)
这不仅匹配字符串的结尾,还匹配query(?)和fragment(#)的分隔符.
如果您url恰好是文档的位置(例如location.href),请更好地使用location.pathname.