var str = "<span><div id='oxxoxox' name='lilei'>111111</div><td id='oxxoxox' name='lilei'>222222</td><td id='oxxoxox' name='lilei'>333333</td></span>" 我想找出所有标签里面的东西
如 span标签下是<div id='oxxoxox' name='lilei'>111111</div><td id='oxxoxox' name='lilei'>222222</td><td id='oxxoxox' name='lilei'>333333</td>div的标签下是1111111111
td的标签下是222222 和 333333
这个正则该怎么写了?????????/

解决方案 »

  1.   


    <body>
    <span> <div id='oxxoxox' name='lilei'>111111 </div> <td id='oxxoxox' name='lilei'>222222 </td> <td id='oxxoxox' name='lilei'>333333 </td> </span>
    </body>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var $=document.getElementsByTagName("body")[0].innerHTML,
    $n=function(o){return document.getElementsByTagName(o)},
    dw=document.write,
    reg=/<\/([^>]+)+>/gmi,
    t=$.match(reg).join(",").replace(/<\/([^>]+)>/g,function(a,b){return b;}).split(","),
    toObject=function(a){var o={};for(var i=0, j=a.length;i<j;i=i+1){o[a[i]]=true;}return o;},
    keys=function(o){var a=[],i;for (i in o){if (o.hasOwnProperty(i)){a.push(i);}}return a;},
    uniq=function(a){return keys(toObject(a));},
    eArr=(uniq(t));
    dw("<hr>");
    dw("<br />所有body内元素及其对应内容如下:<br />");
    dw("<hr>");
    for(var i=0;i<eArr.length;i++){
    if($n(eArr[i]).length==1){
    dw("<br />元素名称:"+eArr[i]+" 对应内容:"+$n(eArr[i])[0].innerHTML);
    }
    else{
    for(var j=0;j<$n(eArr[i]).length;j++){
    dw("<br />元素名称:"+eArr[i]+"["+j+"]"+" 对应内容:"+$n(eArr[i])[j].innerHTML);
    }
    }
    }
    //-->
    </SCRIPT>