2

可能重复:
从字符串中删除一个单词

我有一个简单的字符串var mystr = "Lorem ipsum dolor sit amet, consectetur adipiscing elit",我有一个数组var lipsums = new Array("dolor","consectetur","elit");现在,我想要一个简单的函数来删除字符串中的任何相同单词。

所以,在上面的例子中,它应该删除单词“dolor”、“consectetur”和“elit”,我的字符串mystr应该是"Lorem ipsum sit amet, adipiscing"

这个脚本应该是 Javascript(没有 jQuery)。任何帮助,将不胜感激。

4

2 回答 2

1

像这样:

for(i=0; i<lipsums.length; i++) {
   mystr = mystr.replace(new RegExp(lipsums[i],"g"), "");
}

在循环之后添加这个以删除双空格:

mystr = mystr.replace(/\s{2,}/g, ' ');
于 2012-11-16T16:06:57.113 回答
1

遍历要删除的单词数组,通过 split/join 删除所有出现的单词:

for (var i = 0; i < lipsums.length; i++) {
    mystr = mystr.split(lipsums[i]).join('');
}

http://jsfiddle.net/9Rgzd/

您可能还想在之后清理空白,您可以使用正则表达式:

// Note: don't do this in the loop!
mystr = mystr.replace(/\s{2,}/g, ' ');

http://jsfiddle.net/9Rgzd/1/

于 2012-11-16T16:07:32.673 回答