给出带逗号的任何句子:
var myText = 'This is mine, all of it, and more!'
我想删除第一个逗号之后的所有内容,包括前面的单词。
以上示例将输出:
This is
如果没有逗号,则应返回所有内容。
我认为我需要使用类似的东西,但不知道从哪里开始:
myText.replace(/.*,/, "");
答案 0 :(得分:2)
你可以这样做:
var str = "This is mine, all of it, and more!";
str = str.replace(/ *\b[^, ]+,.*/, "");
//=> This is
答案 1 :(得分:0)
好吧,我发现正则表达式不可读,所以也许可以考虑一下:
if (str.indexOf(',') != -1){
/*
parts = str.split(',')
words = parts[0].split(' ')
# remove last word and re-join
return words.slice(0, -1).join(' ');
*/
return str.split(',')[0].split(' ').slice(0,-1).join(' ');
}
return str;