删除URL中最后两个斜杠之间的字符串

时间:2015-04-22 00:44:10

标签: javascript

我有以下网址: http://website.com/testing/test2/

我想删除最后两个斜杠之间的文本,这样会产生: http://website.com/testing/

5 个答案:

答案 0 :(得分:2)

不确定它是否是最佳解决方案,但它很简单且有效:

var s = 'http://website.com/testing/test2/';
var a = s.split('/');

s = s.replace(a[a.length-2] + '/', '');
alert(s);`

演示:http://jsfiddle.net/erkaner/xkhu92u0/1

答案 1 :(得分:1)

这里我们从字符串和子字符串中获取最后一个斜杠索引,从开头到斜杠索引

 text = text.substring(0, text.lastIndexOf("/")

将导致:

"http://website.com/testing/test2"  // text

然后做同样的事情再次得到最后一个slach索引和子串到这个索引+ 1和+1再次在子串中包含斜杠

text = text.substring(0, text.lastIndexOf("/")+1)

这将导致:

"http://website.com/testing/"   // text

在一行中完成:

text = "http://website.com/testing/test2/"

text = text.substring(0, text.substring(0, text.lastIndexOf("/")).lastIndexOf("/")+1)

答案 2 :(得分:0)



var url = 'http://website.com/testing/test2/', //URL to convert
    lastSlash = url.lastIndexOf('/'),          //Find the last '/'
    middleUrl = url.substring(0,lastSlash);    //Make a new string without the last '/'
lastSlash = middleUrl.lastIndexOf('/');        //Find the last '/' in the new string (the second last '/' in the old string)
var newUrl = middleUrl.substring(0,lastSlash); //Make a new string that removes the '/' and everything after it
alert(newUrl);                                 //Alert the new URL, ready for use




这很有效。

答案 3 :(得分:0)

您可以这样做:

var missingLast = url.substring(0, url.substring(0, url.length - 1).lastIndexOf('/'));

这将首先忽略最后一个斜杠,然后它将忽略倒数第二个斜杠。

注意:如果你想保留最后一个斜杠,只需像这样添加一个到lastIndexOf:

var missingLast = url.substring(0, url.substring(0, url.length - 1).lastIndexOf('/')+1);

答案 4 :(得分:0)

尝试这样的事情,

var url = 'http://website.com/testing/test2/';
var arr = url.split('/');
var lastWord = arr[arr.length-2];
var newUrl = url.substring(0, url.length-lastWord.length-1);
alert(newUrl);
<{3}}

中的

演示