小菜想实现这样一个需求,在一个Editplus文档中,有很多行10位的数字,这些数字已经排好序了。
比如:
1234567890
1234567891
1234567892
1234534124
1234614124
4321412414
5636373573有什么办法能方便的找出两行至少前7位相同的数字吗?请高手指点。
比如,上面的数字中,能够找出
1234567890
1234567891
1234567892不知道是否能有正则表达式之类的实现这个需求。或者有其他方法也可以,先谢谢啦!
比如:
1234567890
1234567891
1234567892
1234534124
1234614124
4321412414
5636373573有什么办法能方便的找出两行至少前7位相同的数字吗?请高手指点。
比如,上面的数字中,能够找出
1234567890
1234567891
1234567892不知道是否能有正则表达式之类的实现这个需求。或者有其他方法也可以,先谢谢啦!
请把字符粘贴进来:
<textarea id="s" rows="17"></textarea>
<input type="button" value="处理" onclick="func()"/>
结果如下:
<textarea id="r" rows="17"></textarea>
<script>
func = function(){
document.getElementById("r").value = "";
var sva = document.getElementById("s").value.split("\n");
var o={},a=[],flag={};
for(var i=0;i<sva.length;i++){
if(o[sva[i].substr(0,7)]){
a.push(sva[i]);
if(!(flag[sva[i].substr(0,7)])){
a.push(o[sva[i].substr(0,7)]);
flag[sva[i].substr(0,7)]=true;
}
}else{
o[sva[i].substr(0,7)] = sva[i];
}
}
document.getElementById("r").value = a.toString().replace(/,/g,"\n");
}
</script>
1234567000
1234567999
这样两种情况,没把
1234567000
1234566999
这样往下想
看来如果要往数学方面想还不能单纯这样,不过js要处理这东西还要parseInt一次,可能效率不比直接字符串处理要强
<!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>华丽登场!
this.divParament = null;
}
slideDiv.prototype = {
//初始化
_initialize: function () {
var _self = this;
_self.divParament = {};
_self.divParament[div] = "123456";//这里出问题了
alert(_self.divParament.div);
},