本帖最后由 zzxap 于 2011-09-28 15:36:05 编辑

解决方案 »

  1.   

    不用正则不是也可以么,两个方法都给你了
    //不用正则
    var imgArr = document.getElementsByTagName("img");
    var arr = []
    for(var i=0;i<imgArr.length;i++){
    arr.push(imgArr[i].src)
    alert(arr[i]);
    }
    //正则
    var arr2 = []
    var reg = /src=\"http[^\"]*\"/g;
    var con = document.getElementById("imgArea").innerHTML; //这里把img都放到一个div中了
    var arr2 = con.match(reg);
    alert(arr2[3]);
      

  2.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <title>new document</title>
    </head>
    <body>
    <textarea id="txt" rows="10" cols="80">
    <p>克重:300</p>
    <p>&nbsp;</p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/1.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/2.jpg" /></p>
    xxxxxxxxxxxxxx
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/3.jpg" /></p>
    bbbbbbbbbbbb
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/4.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/5.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/6.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/7.jpg" /></p><p align="left">描述中有注明的内容(比如颜色,尺码,面料等),要是在有疑问可旺旺联系!</p></textarea>
    <input type="button" value=" 提取 " onclick="getUrl()" />
    <script type="text/javascript">
    function getUrl(){
    var result = [];
    var text = document.getElementById("txt").value;
    var reg = /<img.*?src="([^"]*?)"/ig
    text.replace(reg, function(v, m){result.push(m);});
    alert(result.join('\n'))
    }
    </script>
    </body>
    </html>
      

  3.   

    <html><head><title></title>
    <script language="javascript" type="text/javascript">
    var arr = new Array; function test(){
     findTextNode('body');
        alert(arr);
    }
    function findTextNode(nodes){
        var cNodes = document.getElementsByTagName(nodes);  
            for(var i=0;i<cNodes[0].children.length;i++){  
                var str = cNodes[0].children[i].innerHTML;   
                var re = /<img.*? src=\"(.*?)\".*?>/gi;
                if(re.test(str)){
                arr.push(str.replace(re,"$1"));  
                }
                findTextNode(cNodes[0].children[i].nodeName);  
            }  
            
    }</script>
    </head><body onload="test()">
    <p>克重:300</p>
    <p>&nbsp;</p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/1.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/2.jpg" /></p>
    xxxxxxxxxxxxxx
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/3.jpg" /></p>
    bbbbbbbbbbbb
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/4.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/5.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/6.jpg" /></p>
    <p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/7.jpg" /></p><p align="left">描述中有注明的内容(比如颜色,尺码,面料等),要是在有疑问可旺旺联系!</p>
    </body></html>
      

  4.   

    这个不错,两个都可以。
    正则:src=""[^""]+?""
      

  5.   

    不要用document。html内容是获取到的一个字符串
      

  6.   

    2楼的方法就可以啊,text换成你取得的字符串就行了
      

  7.   

    var str ='<p>克重:300</p><p>&nbsp;</p><p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/1.jpg" /></p><p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/2.jpg" /></p>';
    var re = /.*?<img.*?src="(.*?)" \/>|.*/ig;
    var newStr = str.replace(re,"$1 ");
    newStr = newStr.replace(/^\s*(.*?)\s*$/g,"$1");
    var arr = newStr.split(" ");
    alert(arr);
      

  8.   


    var str='<img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/1.jpg" /></p><p><img alt="" align="middle" src="http://www.rybao.com/myfile/paiye/rybao_supermove/paiye/PY-28958/2.jpg" /></p>xxxxxxxxxxxxxx<p>';
    str=str.replace(/src/g,"尾");
    str=str.replace(/img/g,"头");
    str1=str.replace(/([^头]*)头([^尾]+)尾="([^"]*)" \//g,"$3@");
    console.log(str1)
      

  9.   

    如果你还要正则,就split("@")吧。。