网络编程 
首页 > 网络编程 > 浏览文章

JS实现为排序好的字符串找出重复行的方法

(编辑:jimmy 日期: 2025/12/25 浏览:3 次 )

本文实例讲述了JS实现为排序好的字符串找出重复行的方法。分享给大家供大家参考,具体如下:

实现这样一个需求,在一个Editplus文档中,有很多行10位的数字,这些数字已经排好序了。

比如:

1234567890
1234567891
1234567892
1234534124
1234614124
4321412414
5636373573

有什么办法能方便的找出两行至少前7位相同的数字吗?

比如,上面的数字中,能够找出

1234567890
1234567891
1234567892

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title></title>
  <style type="text/css">
    div{ float:left; }
    #divCenter{ padding-top:100px;margin:0 50px; }
    .txt{width:200px;height:200px;}
    #txtOldData{background-color:#A6CAF0;}
    #txtAnswer{background-color:#EBA9A6;}
  </style>
  <script type="text/javascript">
    function test() {
      var arr = document.getElementById("txtOldData").value.replace(/ +/g, '').split("\n");
      var tempStr = arr[0].substring(0, 7);
      var compareLen = 7, equalNum = 0;
      var answer = "";
      for (var i = 1; i < arr.length; i++) {
        if (arr[i].substring(0, 7) == tempStr) {
          if (equalNum == 0)
            answer += arr[i - 1] + "\n";
          answer += arr[i] + "\n";
          equalNum++;
        } else {
          tempStr = arr[i].substring(0, 7);
          equalNum = 0;
        }
      }
      document.getElementById("txtAnswer").value = (answer);
    }
  </script>
</head>
<body>
  <div>
    请输入数值:<br />
    <textarea id="txtOldData" class="txt">
1234567890
1234567891
1234567892
1234534124
1234614124
4321412414
5636373573
    </textarea>
  </div>
  <div style="padding-top:90px;padding" >
    <input type="button" value="测试==>" onclick="test()" />
  </div>
  <div>
    结果:<br />
    <textarea id="txtAnswer" class="txt"></textarea>
  </div>
</body>
</html>

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

上一篇:JS判断是否长按某一键的方法
下一篇:使用NodeJs 开发微信公众号(三)微信事件交互实例
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。