科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件查找两段文本中相同的词句

查找两段文本中相同的词句

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

查找两段文本中相同的词句

作者:meizz 来源:CSDN 2008年1月20日

关键字: 词句 文本相同 查找

  • 评论
  • 分享微博
  • 分享邮件

//找出两段文本中相同的单词短句
<SCRIPT LANGUAGE="JavaScript">
function meizz(a, b, n)
{
    var c=a.length>b.length?b:a;
    if(b==c) b=a; a=c; //少做些循环
    if(!n) n=1;
    var mm = new Array();
    for(var i=0; i<a.length; i++)
    {
        for(var j=i+n; j<=a.length; j++)
        {
            var s = a.substring(i, j);
            if(b.indexOf(s)==-1)
            {
                if(s.length>n)
                {
                    mm[mm.length] = a.substring(i, j-1);
                    i = j-2;
                }
                break;
            }
            else
            {
                if(j==a.length)
                {
                    mm[mm.length]=s;
                }
            }
        }
       
    }
    return mm.Unique().join(","); //去除数组里的重复项
    //return mm.join(",");
}

Array.prototype.Unique = function()
{
  var a = {}; for(var i=0; i<this.length; i++)
  {
    if(typeof a[this[i]] == "undefined")
      a[this[i]] = 1;
  }
  this.length = 0;
  for(var i in a)
    this[this.length] = i;
  return this;
};


var a = "我们是最好的";
var b = "我们不是最差的";
//结果得出"我们"&"是最"
alert("返回的结果:"+ meizz(a, b, 2));
</SCRIPT>


查看本文来源
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章