相关疑难解决方法(0)

使用jQuery的Javascript正则表达式包含正则表达式扩展

我正在使用jQuery" contains " 的扩展,如下所示:

$.extend($.expr[':'],{
    containsExact: function(a,i,m){
        return $.trim(a.innerHTML.toLowerCase()) === m[3].toLowerCase();
    },
    containsExactCase: function(a,i,m){
        return $.trim(a.innerHTML) === m[3];
    },
    containsRegex: function(a,i,m){
        var regreg =  /^\/((?:\\\/|[^\/])+)\/([mig]{0,3})$/,
        reg = regreg.exec(m[3]);
        return RegExp(reg[1], reg[2]).test($.trim(a.innerHTML));
    }
});
Run Code Online (Sandbox Code Playgroud)

我有一个表格,我正在尝试有条件地格式化某些单元格,所以我在td选择器中使用该containsRegex函数的扩展.我快到的问题是,很多,我试图用(我已经对JavaScript的正则表达式测试仪测试一样从正则表达式和他们为之奋斗)不使用此功能工作.这些是我想要匹配的各种字符串:

注意,"x"可以是ax,t,f或v,"X"可以是X,T,F或V.最后,"(mb)"可以是括号中的任何两个小写字母az.

- ,(mb),x*,x*(mb),x,x(mb),X*,X*(mb),X

以下是我正在使用的几个正则表达式语句的代码:

 $("td:containsExact('-')").addClass("0 queue"); // -
 $("td:containsRegex('/[^xtfv*]\([a-z]{2}\)/g')").addClass("1 active"); // (mb)
 $("td:containsRegex('/\b[xtfv]\*(?!\()/g')").addClass("2 queue review"); // x*
 $("td:containsRegex('/\b[xtfv]\*(?:\([a-z]{2}\))/g')").addClass("3 active review"); // x*(mb)
 $("td:containsRegEx('/\b[xtfv](?![*\(])/g')").addClass("4 queue");  // x
 $("td:containsRegEx('/\b[xtfv](?:\([a-z]{2}\))/g')").addClass("5 active");  // x(mb)
 $("td:containsRegEx('/\b[XTFV]\*(?!\()/g')").addClass("6 queue review");  // X*
 $("td:containsRegEx('/\b[XTFV]\*(?:\([a-z]{2}\))/g')").addClass("7 active review");  // X*(mb) …
Run Code Online (Sandbox Code Playgroud)

javascript regex jquery contains

7
推荐指数
1
解决办法
3246
查看次数

标签 统计

contains ×1

javascript ×1

jquery ×1

regex ×1