javascript jquery 正则表达式的一个问题

2025-04-04 11:03:53
推荐回答(1个)
回答1:

一时理解错需求,写错了,现在校正一下,谢谢大家指出!

这里提供jQuery和正则实现方法:




    1924473693841318187
    
    



  
    024
    042
    022
    420
    402
    204
    240
    046
    048
    049
    056
  


要查询的是:

查询




$(".search").click(function(){
    var value = $.trim($(".numinput").val()) + '';
 
    if(value == '') return false;   //没输入值
    
    // /* //取消注释可禁用
    var length = value.length;
    //循环预测length次,最后匹配字符必须在查询串里面,增加了022情况的判断
    //比如输入048得到:/^(?=^\d*?[048]){3}[048]{3}$/
    var patternStr = '^(?=^.*?['+value+']){'+length+'}['+value+']{'+length+'}$';
    var pattern = new RegExp(patternStr);
    $(".highlight").removeClass("highlight");
    $("#tablef td").each(function(){
        if($(this).text().match(pattern)) {
            $(this).addClass("highlight");
        }
    });
    // */
    
    /* //注释这句可调用
    //对字符串排序后结果全等则表明匹配
    var sortValue = String.prototype.split.call(value, '').sort().join('');
    $(".highlight").removeClass("highlight");
    $("#tablef td").each(function(){
        if(sortValue === String.prototype.split.call($(this).text(), '').sort().join('')) {
            $(this).addClass("highlight");
        }
    });
    // */
});




更多正则问题,请关注:http://www.zjmainstay.cn

相关问答