美文网首页JavaScript与数据结构
JavaScript数据结构7——串的模拟匹配

JavaScript数据结构7——串的模拟匹配

作者: RichardW | 来源:发表于2017-03-22 13:48 被阅读0次

    串的模拟匹配是使用常规思路对串进行字串匹配

    function String(string) {
        this.data = string;
    }
    String.prototype.index =function(t){
        var i=0;j=0;
        while(i<this.data.length&&j<t.data.length){
            if(this.data[i]==t.data[j]){
                i++;j++;
            }else{
                i = i-j+1;j=0;
            }
        }
        if(j>=t.data.length){
            return i-t.data.length;
        }else{
            return -1;
        }
    }
    var s = new String('google');
    var s1 = new String('og');
    var s2 = new String('gl');
    var s3 = new String('e');
    var s4 = new String('g');
    var s5 = new String('aaaa');
    console.info(s.index(s1));
    console.info(s.index(s2));
    console.info(s.index(s3));
    console.info(s.index(s4));
    console.info(s.index(s5));
    

    输出

    2
    3
    5
    0
    -1

    相关文章

      网友评论

        本文标题:JavaScript数据结构7——串的模拟匹配

        本文链接:https://www.haomeiwen.com/subject/cqjonttx.html