我想显示包含3个单词的字符串中的前2个单词(例如)。
我有question的以下代码。
JSFIDDLE代码的$('select option').each(function(i, item){
var arr = $(item).text().split(' ');
$(item).text(arr[0]);
});
代码工作正常,但只显示第一个单词。我试着让它显示2个单词,但我没有运气。所以,如果有人能说出如何让它显示我的字符串的前两个单词,那就太棒了。
答案 0 :(得分:8)
您可以使用Array.prototype.slice
和Array.prototype.join
方法:
$('select option').text(function(_, currentText) {
return currentText.split(' ').slice(0, 2).join(' ');
});
答案 1 :(得分:1)
你也可以用正则表达式
做同样的事情$('select option').each(function(i, item){
var text = $(item).text();
var regex = /\w+\s+\w*/
var groups = text.match(regex) || [];
$(item).text(groups[0]);
});
这是DEMO