已写出一些代码,但不能完成查找到多个配对的功能,有兄弟说可以记录下前一个<class>的位置,然后从这个位置往后找,可是调试了半天没有成功,请大家指教一下,谢谢
<html>
<body>
<class>1234</class>ffff<class>5678</class><br><class>9876</class>
</body>
</html>
<script>
function IndexDemo(str2){
var str1 = document.body.innerHTML;
var s = str1.indexOf(str2);
return(s);
}
function substr()
{
var index1 = IndexDemo("<CLASS>") + "<CLASS>".length;
var leng = IndexDemo("</CLASS>") - IndexDemo("<CLASS>");
var str1 = document.body.innerHTML;
var str = str1.substring(index1 , leng);
return str;
}alert( substr() );
</script>
<html>
<body>
<class>1234</class>ffff<class>5678</class><br><class>9876</class>
</body>
</html>
<script>
function IndexDemo(str2){
var str1 = document.body.innerHTML;
var s = str1.indexOf(str2);
return(s);
}
function substr()
{
var index1 = IndexDemo("<CLASS>") + "<CLASS>".length;
var leng = IndexDemo("</CLASS>") - IndexDemo("<CLASS>");
var str1 = document.body.innerHTML;
var str = str1.substring(index1 , leng);
return str;
}alert( substr() );
</script>
<body>
<class>123456789</class><br>
<br>
</body>
</html>
<script>
function IndexDemo(str2){
var str1 = document.body.innerHTML;
var s = str1.indexOf(str2);
return(s);
}
function substr()
{
var index1 = IndexDemo("<CLASS>") + "<CLASS>".length;
var leng = IndexDemo("</CLASS>") - IndexDemo("<CLASS>");
var str1 = document.body.innerHTML;
var str = str1.substring(index1 , leng);
return str;
}alert( substr() );
</script>
var list=[]
var i=0;
document.body.innerHTML.replace(/<class>(.*?)<\/class>/gim,function(){list[i++]=arguments[1]})
alert(list)
</script>简单些可以用var list=document.body.innerHTML.match(/<class>.*?<\/class>/gim);
不过带着<class> ,再用var str=list[i].substring(7,list[i].length-8)截取
document.body.innerHTML.replace(/(<class>)(.*?)(<\/class>)/gim,"$1abcd$3");