次のようなダッシュで区切られた文字列があります。
x#-ls-foobar-takemeoff-
ダッシュで終わる任意の数の文字takemeoff-
を使用して、javascript を使用して削除するにはどうすればよいですか?takemeoff-
次のようなダッシュで区切られた文字列があります。
x#-ls-foobar-takemeoff-
ダッシュで終わる任意の数の文字takemeoff-
を使用して、javascript を使用して削除するにはどうすればよいですか?takemeoff-
var str = "x#-ls-foobar-takemeoff-";
var newStr = str.replace(/[^-]+-$/,"");
基本的な正規表現は言う
[^-]+ <-- Match any characters that is not a dash
- <-- Match a dash character
$ <-- Match the end of a string
string がある場合str
は、次のことができます。
str = str.substr(0, str.lastIndexOf("-", str.length - 2));
substr()
と の使用lastIndexOf()
:
var myStr = "x#-ls-foobar-takemeoff-";
myStr = myStr.substr(0, myStr.length-1); // remove the trailing -
var lastDash = myStr.lastIndexOf('-'); // find the last -
myStr = myStr.substr(0, lastDash);
alert(myStr);
出力:
x#-ls-foobar