数组中字指定数量连续符串的【模糊匹配 】

需求是有多个输入框输入的数值,连续输入指定数量的的字符文字,

在其他输入项中不能重复,因此使用模糊匹配的方式,返回匹配的状态,

详细看下面的代码:

/** 三个公司名称模糊匹配
 * @param strArr 需要匹配的字符串数组
 * @param len  需要匹配的最小连续字符长度
 */
function comNameCompare(strArr,len){
    var result = '';
    if(strArr.length == 3  ){  // 需求是三个输入框必须要填,下面是模糊匹配方法
        for( var i = 0;i<= strArr.length; i++ ){
            for( var j = 0;j< strArr[i].length-len; j++ ){
                var str = strArr[i].slice(j,j+len);
                var tempArr =  strArr.slice(0);   // 数组不改变原始数据的一次拷贝
                tempArr.splice(i,1);
                for( var k = 0; k< tempArr.length; k++ ){
                    var isIn = tempArr[k].indexOf(str);
                    if( isIn > -1 ){
                        result = "重复";
                        return  result;
                    }else{
                        result = "通过";
                    }
                }
            }
        }
        return result;
    }else{
        alert("需要填写三项对比的公司哦!");
    }
}

 

posted @ 2016-07-30 14:35  cench  阅读(452)  评论(0编辑  收藏  举报