4

我正在尝试从字符串中删除所有少于 3 个字符的单词。我发现了类似的问题,例如这里这里,但接受的答案似乎对我不起作用。

我有一个字符串,例如。" abc df "

我想实现“ abc

我目前使用的(JS)代码是:

  var myString = "abc d ef";
  myString = myString.replace(/\W*\b\w{1,2}\b/, "");

...但这会返回“ abc ef ”并且仅删除一个小单词的第一个实例。 我是否需要在某处使用“+”以允许多次出现?

是否有任何正则表达式大师可以提供帮助?

我已经设置了一个jsfiddle

4

1 回答 1

5

您只需将全局修饰符添加到正则表达式。g你是金色的。

var myString = "abc d ef";
    myString = myString.replace(/\W*\b\w{1,2}\b/g, "");
alert(myString);
于 2013-05-01T16:20:58.567 回答