0

こんにちは、ハイフンで区切られた文字列があり、文字列のlastindexを取得して新しい値に置き換えたいと思います

   var str1="New-New_Folder"; //Replace New_Folder with Folder so that the str becomes
   var newstr1="New-Folder";


   var str2="New-New_Folder-New_Folder"; //Replace the last New_Folder with Sub_Folder so that the str becomes
   var newstr2="New-New_Folder-Sub_Folder";

誰でもここで私を助けることができますか?

4

3 に答える 3

1

split を使用して、長さから 1 を引いた最後のインデックスを取得できます。

var string = "some-hyphen-string";
var parts = string.split("-");
var lastPart = parts[parts.length - 1]; //lastPart is now the final index string split

デモ: http://jsfiddle.net/ACfRU/

于 2013-08-23T20:39:23.670 に答える
0

文字列関数の使用:

var str1 = "New-New_Folder";
var newstr1 = str1.substring(0, str1.lastIndexOf("-")+1) + "Folder";
于 2013-08-23T20:50:56.943 に答える
0

これは非常に不明確であることを認めなければなりませんが、おそらく tymeJV の回答と私の回答を使用して、ニーズに合ったソリューションを考え出すことができます。

var str1="New-New_Folder";
var newstr2 = replaceLast(str1, "Sub_Folder");

alert(newstr2);

function replaceLast(strWhat, strWith) {
    strWhat = strWhat.split("-");
    strWhat[strWhat.length - 1] = strWith;
    strWhat = strWhat.join("-");
    return strWhat;
}

JSFiddle: http://jsfiddle.net/FF96g/

于 2013-08-23T20:41:21.013 に答える