如何在Javascript中去掉破折号分隔字符串的最后一个元素
我用破折号分隔字符串,如:如何在Javascript中去掉破折号分隔字符串的最后一个元素,javascript,Javascript,我用破折号分隔字符串,如: x#-ls foobar起飞- 如何使用javascript删除takemeoff-,其中takemeoff-可以是以破折号结尾的任意数量的字符?如果您有字符串str,则可以执行以下操作: str = str.substr(0, str.lastIndexOf("-", str.length - 2)); 基本正则表达式表示 [^-]+ <-- Match any characters that is not a dash - <-- Ma
x#-ls foobar起飞-
如何使用javascript删除
takemeoff-
,其中takemeoff-
可以是以破折号结尾的任意数量的字符?如果您有字符串str
,则可以执行以下操作:
str = str.substr(0, str.lastIndexOf("-", str.length - 2));
基本正则表达式表示
[^-]+ <-- Match any characters that is not a dash
- <-- Match a dash character
$ <-- Match the end of a string
[^-]+使用substr()
和lastIndexOf()
:
产出:
x#ls foobar
[^-]+ <-- Match any characters that is not a dash
- <-- Match a dash character
$ <-- Match the end of a string
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);