使用var将字符串传递给正则表达式

时间:2013-10-16 15:39:40

标签: jquery regex

我一直在寻找正确的方法来使用var作为正则表达式的一部分 。 我们的想法是获取页面上的每个可搜索字段并检查文本是否包含搜索词,然后如果是,则替换文本的该部分并将其包装在样式范围内。 这是代码中无法正常工作的部分"/\\"+src+"/gi",

$('.srch').each(function () {

        var txt = $(this).text(),
            src = $('#Srch_Srch_txt').val();

        var s = txt.replace("/\\"+src+"/gi", '<span class=highlight>' + src + '</span>');

        $(this).html(s);

    })

提前谢谢你, 将

1 个答案:

答案 0 :(得分:1)

您可以使用Javascript's RegExp object

构建动态正则表达式,进行字符串操作
var re = new RegExp("ab" + src, "i"); // assuming src is a string variable