1.获得元素className
HTML
<ul>
<li class="box1">11111</li>
<li>2222222</li>
<li class="box1box2">33333333</li>
<li>4444444</li>
<li class="box1 box2">5555555</li>
</ul>
JS
var aLi=getByClass(document,'box1');
for (var i=0;i<aLi.length;i++) {
aLi[i].style.background='red';
}
function getByClass(oParent,aClass){
var arr=[];
var aEle=oParent.getElementsByTagName('*');
//当正则需要传参的时候,一定要用全称的写法
var re=new RegExp('\\b'+aClass+'\\b');
for (var i=0;i<aEle.length;i++) {
if(re.test(aEle[i].className)){
arr.push(aEle[i]);
}
}
return arr;;
}
2.找重复项最多的字符
//\1:重复的第一个子项
//\2:重复的第二个子项
// var str='abca';
var re=/(a)(b)(c)\1/;//true
// var re=/(a)(b)(c)\2/;//false
// alert(re.test(str));
// var re=/\w\w/; //c1,ba
// var re=/(\w)\1/; //cc,99,aa
//找重复项最多的字符串
var str='adsssssssssskfjkfjdgssssssshdksjksssssfusierk';
var arr=str.split('');
str=arr.sort().join('');
// alert(str);
var value='';
var index=0;
var re=/(\w)\1+/g;
str.replace(re,function($0,$1){
// alert($0);
if(index<$0.length){
index=$0.length;
value=$1;
}
});
alert('最多的字符:'+value+',重复次数:'+index);