替换* variable * text但保留大小写

时间:2015-02-19 16:15:03

标签: javascript jquery

我需要在javascript 变量中替换一些文字,而不会丢失案例,即。

"MAT" ==> "MATch string in db"代替"Mat" ==> "match string in db"

现在我正在做这件事(不保留原案件):

var user_str = $("#user-input").val();
var db_match = db_match.replace(new RegExp(user_str, "ig") , '<span class="u b match">' + user_str + '</span>');

我发现人们需要替换静态文本的情况,但在我的情况下,我需要替换变量内容。

显然,这也不起作用:

var user_str = $("#user-input").val();
db_match = db_match.replace(/(user_str)/ig, "<span class=u b match>$1</span>");

知道怎么做吗?

1 个答案:

答案 0 :(得分:7)

Use a group并构建regular expression

&#13;
&#13;
    var str = "test";
    var text = "Test this";
    var re = new RegExp("(" + str + ")","gi");
    console.log(text.replace(re, "<span>$1</span>"))  //"<span>Test</span> this"
&#13;
&#13;
&#13;

相关问题