替换textarea中的确切文本

时间:2014-04-03 12:13:59

标签: javascript jquery

我对jQuery有这个小问题。我想从textarea中删除一个特定的文本。检查我的代码:

Textarea值:

aa

a

aaa 

我试过这个:

$("#id_list").val($("#id_list").val().replace("a", " "));

上述代码仅在每行中的文本唯一且其他行没有匹配字符时才有效。 现在问题是上面的代码删除了 aa 中的第一个字母,而没有删除第二行 a 。如何让它在textarea中替换/删除一行中的确切单词?任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:4)

使用单词边界。

这样做:

$("#id_list").val($("#id_list").val().replace(/\ba\b/g, " "));

这将只取代 a

如果您只想更换一次,请从我的正则表达式中删除g

如果要使用存储在变量中的字符串,请执行以下操作:

var word = "a";
var regex = new RegExp("\\b"+word+"\\b","g");
$("#id_list").val($("#id_list").val().replace(regex, " "));

答案 1 :(得分:2)

只需使用replace(/a/g, " "))即可。 / g标志表示您全局搜索" a"信件。没有它,你只需要替换第一次出现。

答案 2 :(得分:1)

您需要使用regex replace

replace(/a/g, " "))