正则表达式获取不带参数的 url 的最后一部分(如果存在) [英] Regexp get last part of url without parameters if they exists
问题描述
我正在寻找要在我的 javascript 代码中使用的正则表达式,它为我提供不带参数的 url 的最后一部分 如果它们存在 - 这是示例 - 带和不带参数:
https://contentsfra>-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg
在这两种情况下,我都想得到:
14238253_132683573850463_7287992614234853254_n.jpg
这是正则表达式
.*\/([^?]+)
和JS代码:
let lastUrlPart =/.*\/([^?]+)/.exec(url)[1];
let lastUrlPart = url =>/.*\/([^?]+)/.exec(url)[1];//测试让 t1 = "https://scontent-fra3-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg?oh=fdbf6800f853bec5e78a6835c8c8538c87a8c538c8738c8538c873853573850463_72879926142387让 t2 = "https://scontent-fra3-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg"console.log(lastUrlPart(t1));console.log(lastUrlPart(t2));
可能有更好的选择吗?
I looking for regular expression to use in my javascript code, which give me last part of url without parameters if they exists - here is example - with and without parameters:
https://scontent-fra3-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg
In both cases as result I want to get:
14238253_132683573850463_7287992614234853254_n.jpg
Here is this regexp
.*\/([^?]+)
and JS code:
let lastUrlPart = /.*\/([^?]+)/.exec(url)[1];
let lastUrlPart = url => /.*\/([^?]+)/.exec(url)[1];
// TEST
let t1 = "https://scontent-fra3-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg?oh=fdbf6800f33876a86ed17835cfce8e3b&oe=599548AC"
let t2 = "https://scontent-fra3-1.xx.fbcdn.net/v/t1.0-9/14238253_132683573850463_7287992614234853254_n.jpg"
console.log(lastUrlPart(t1));
console.log(lastUrlPart(t2));
May be there are better alternatives?
这篇关于正则表达式获取不带参数的 url 的最后一部分(如果存在)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!