Javascript JS在角色最后一次出现后删除所有内容
好的,我有这个Javascript JS在角色最后一次出现后删除所有内容,javascript,Javascript,好的,我有这个 var URL = "http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character"; console.log(URL.substring(URL.lastIndexOf("/"))); 提供“/在最后一次出现字符之前删除所有内容” 如何获取“http://stackoverflow.com/questions/10767815/“给
var URL = "http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
console.log(URL.substring(URL.lastIndexOf("/")));
提供“/在最后一次出现字符之前删除所有内容”
如何获取“http://stackoverflow.com/questions/10767815/
“给您:
var URL=”http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
警报(URL.substring(0,URL.lastIndexOf(“/”)+1))代码>或运行代码段。
var URL=”http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
var myRegexp=/^(.*\/)/g;
var match=myRegexp.exec(URL);
警报(匹配[1])代码>尝试基于数组的提取,如
var URL=”http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
snippet.log(URL.split('/').slice(0,5).join('/')代码>
运行以下命令:
var URL=”http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
var temp=URL.split('/');
temp.pop();
变量结果=临时联接('/');
警报(结果)代码>似乎是正则表达式的好例子(不敢相信还没有人发布过它):
删除字符串末尾的所有连续非正斜杠字符(即最后一个/后面的所有字符)。尝试将.match()
与RegExp
/^\w+.\d+\/
var URL=”http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
var res=URL.match(/^\w+.*\d+\/)[0];
document.body.textContent=res代码>通用解决方案
这是一个通用函数,当搜索的字符或字符串(指针)在我们正在搜索的字符串(haystack)中找不到时,它也会处理边缘情况。在这种情况下,它返回原始字符串
功能修剪(草堆、针){
const lastIndex=haystack.lastIndexOf(针)
返回haystack.substring(0,lastIndex==-1?haystack.length:lastIndex+1)
}
log(trimStringAfter('abcd/abcd/efg/ggfbf','/'))///abcd/abcd/efg/
console.log(trimStringAfter('abcd/abcd/abcd','/')///abcd/abcd/
console.log(trimStringAfter('abcd/abcd/','/')///abcd/abcd/
console.log(trimStringAfter('abcd/abcd','/')///abcd/
console.log(trimStringAfter('abcd','/')//abcd
请添加指向某些文档的链接。请记住,如果我们正在搜索的字符串中没有/
,此解决方案将返回一个空字符串。检查是否有更通用的解决方案。我的努力是否得到了奖励?如果字符串中没有/
,则此解决方案的可能副本将抛出错误。对于URL可能不是问题,但如果有人将其用于其他用途,则可能会导致问题。这只适用于确切的URL方案。在某处添加一个额外的斜杠,它将返回错误的结果。如果确实要使用此基于数组的方法,则需要执行URL.split('/').slice(0,URL.split('/').length-1).join('/')代码>您正在链接到失效的GitHub链接。当字符串中没有/
时,此解决方案将引发错误。URL可能不是问题,但如果有人将其用于其他用途,则可能会导致问题。
console.log(URL.substring(0, URL.lastIndexOf("/")+1));
var URL = "http://stackoverflow.com/questions/10767815/remove-everything-before-the-last-occurrence-of-a-character";
console.log(URL.substring(0,URL.lastIndexOf('/')+1));
//The +1 is to add the last slash
URL.replace(/[^\/]+$/,'')