任何人都可以帮我删除文本区域中的最后一个单词,它将替换为另一个单词。
示例:
I like my dog
应该成为
I like my cat
最后一句话并不总是狗。
我会在这里更新我的代码
function KeyCheck(e) {
var KeyID = (window.event) ? event.keyCode : e.keyCode;
switch(KeyID) {
case 32:
text2 = document.form1.box1.value;
text2 = ReplaceLastWord(text2, "cat");
alert(text2);
}
}
function ReplaceLastWord(str, newStr) {
return str.replace(/\w*$/, newStr);
}
我已经发出警告以检查它是否被替换
答案 0 :(得分:4)
var str = 'I like my dog';
var newEndStr = 'cat';
function ReplaceLastWord(str, newStr) {
return str.replace(/\w*$/, newStr);
}
console.log(ReplaceLastWord(str, newEndStr));
输出:
I like my cat
答案 1 :(得分:2)
您可以搜索最后一个空格字符并替换它后面的文字:
text = text.replace(/\w+$/, '');
text = text.substring(0, text.lastIndexOf(' ')) + ' foobar';
第一行删除所有尾随空格。
您可以将onkeydown
事件绑定到textarea
。如果e.keyCode || e.which
等于空格键代码(不知道它是什么),请通过此函数传递textarea的内容:
function getLastWord(text) {
temp = text.replace(/\w+$/, '');
return temp.substring(temp.lastIndexOf(' '), temp.length - 1)
}
然后检查最后一个单词是否为dog
。 现在你可以替换最后一个单词。