为过滤器创建javascript正则表达式函数

时间:2013-08-01 20:47:08

标签: javascript jquery regex web

我需要创建一个正则表达式函数,用于过滤包含所选字符串的文章供稿列表。

当用户点击过滤器选项时,下面的代码会将变量'tf'添加到所选字符串中。变量'tf'可能如下所示:“香草冰淇淋,电子游戏”,以“香草冰淇淋”和“视频游戏”为关键词。

$(".trending").click(function(){
    $(this).toggleClass("selected");

    var temp22 = "";
    $(".trending.selected").each(function(i, e) {
        temp22 += $(this).attr("id").substr(9) + ", ";
    });

    tf = temp22;
    filter_trend();
});

下面的代码片段通过搜索文章列表来过滤文章Feed,以查看它是否包含关键字。 $(f2)是文章列表,我通过仅返回其html中包含关键字的文章来过滤它。

function filter_trend(){
    var tfilter = new RegExp (tf, "i");

    if (tf == ""){
        filter_load();
        return;
    }

    if (f == "")
        var f2 = ".article";
    else
        var f2 = f;

    $(f2).hide();
    //alert(f2);
    $(f2).filter(function(i,e) {
        return i < list_length && tfilter.test($(e).html());
    }).show();

}

有没有办法使用正则表达式,还是应该用另一种方法处理?

1 个答案:

答案 0 :(得分:0)

好的,所以我不知道&#39;或&#39;正则表达式中的运算符。

添加&#39; |&#39;在每个关键字之间解决问题。