Javascript 清除数据并将旧值追加到文本框中

Javascript 清除数据并将旧值追加到文本框中,javascript,regex,Javascript,Regex,我试图在不完全清除的情况下将值追加到文本框中。。我将举一个例子来说明我在这里要达到的目标 我的代码看起来像 $("#newbutton").click(function(){ $("#srchBox").val($("#srchBox").val().replace(/\s\S+$/,'').replace(/^\S*$/,'') + ' ' +"a"+ ":(" +"b" + ") "); }); 我已经在小提琴中给出了一些示例输入,对于示例输入#1,它工作得很好,但对于示例输入2,它不

我试图在不完全清除的情况下将值追加到文本框中。。我将举一个例子来说明我在这里要达到的目标

我的代码看起来像

$("#newbutton").click(function(){ 
$("#srchBox").val($("#srchBox").val().replace(/\s\S+$/,'').replace(/^\S*$/,'')  + ' ' +"a"+ ":(" +"b" + ") ");
});
我已经在小提琴中给出了一些示例输入,对于示例输入#1,它工作得很好,但对于示例输入2,它不工作,

检查这个

$("#srchBox").val($("#srchBox").val().replace(/\w+[.!?]?$/, '')  + ' ' +"a"+ ":(" +"b" + ") ");

我想通过更改新值的格式来保留旧值,就像我在小提琴中显示的一样。您可以立即在JSFIDLE中进行测试
$("#srchBox").val($("#srchBox").val().replace(/\w+[.!?]?$/, '')  + ' ' +"a"+ ":(" +"b" + ") ");