在最后一次斜线后剪切子串?

时间:2015-05-18 05:52:39

标签: javascript regex substring

如何从javascript中的字符串中删除子字符串(在最后一次斜杠之后),如

c:/ Program File / Internet Explorer

c:/ Program File /

6 个答案:

答案 0 :(得分:6)

尝试使用lastIndexOf()

var str = "c:/Program File/Internet Explorer";
var newStr = str.substr(0,str.lastIndexOf("/")+1);

document.getElementById("res").innerHTML = newStr;
<div id="res"/>

答案 1 :(得分:4)

您可以尝试以下基于否定char类的正则表达式。

string.replace(/[^\/]*$/, "")

DEMO

  • [^\/]*匹配任何字符,但不匹配正向斜线零次或多次。

  • $断言我们在一条线的尽头。

答案 2 :(得分:0)

如果要测试正则表达式,请查看http://www.regexr.com。类似。* /会匹配斜杠字符的所有内容。

答案 3 :(得分:0)

var str = "c:/Program File/Internet Explorer";
var output = str.slice(0, str.lastIndexOf("/")+1);

答案 4 :(得分:0)

你需要lastIndexOf和substr

var t = "c:/Program File/Internet Explorer";
t = t.substr(0, t.lastIndexOf("/"));
alert(t);

或者您可以使用以下内容。

    var removeLastPart = function(url) 
{
        var lastSlashIndex = url.lastIndexOf("/");
        if (lastSlashIndex > url.indexOf("/") + 1)
{
            return url.substr(0, lastSlashIndex);
        } 
else 
{
            return url;
        }
    }

答案 5 :(得分:0)

var filePath = "c:/Program File/Internet Explorer";
var displayUptoSpecifiedChar = filePath.lastIndexOf('/') + 1;
console.log(filePath.slice(0, displayUptoSpecifiedChar));