如何写一个正则表达式,匹配 <a href="="url"></a>中的 URL地址

解决方案 »

  1.   

    如何写一个正则表达式,匹配 <a href="url"> </a>中的 URL地址上面的粘错了。
      

  2.   

    [code=HTML]
    <html>
        <head>
            <script language="javascript">
                window.onload=function(){
                    var str=document.body.innerHTML;
                    var a;
                    var rex=/<a\s.*?\s?href\s*=(\s*['|"]?[^\s'"]+).*?>/ig;
                    if( rex.test(str))
                         alert(RegExp.$1)
                }
            </script>
        </head>
        <body >            <a href="url" class="fchvmqf1hgs8o0-1" target="_self"> <span class="fchvmqf1hgs8o0-1">Fire </span> </a>     </body>
    </html> 
      

  3.   

     
    <html> 
        <head> 
            <script language="javascript"> 
                window.onload=function(){ 
                    var str=document.body.innerHTML; 
                    var a; 
                    var rex=/ <a\s.*?\s?href\s*=(\s*['|"]?[^\s'"]+).*?>/ig; 
                    if( rex.test(str)) 
                        alert(RegExp.$1) 
                } 
            </script> 
        </head> 
        <body >             <a href="url" class="fchvmqf1hgs8o0-1" target="_self"> <span class="fchvmqf1hgs8o0-1">Fire </span> </a>     </body> 
    </html>
      

  4.   

     <a href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml"></a>  
    <a href="(?<result>\S.*)"
    这个是我写的但是结尾的地方错了。  
    BeenZ你的也是结尾处有错误。
      
      

  5.   

    这样呢<html>
        <head>
            <script language="javascript">
                window.onload=function(){
                    var str=document.body.innerHTML;
                    var a;
                    var rex=/<a\s.*?\s?href\s*=(\s*['|"]?.*[\s'"]+).*?>/ig;
                    if( rex.test(str))
                         alert(RegExp.$1)
                }
            </script>
        </head>
        <body >           <a href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml" > </a>
        </body>
    </html> 
      

  6.   


    (?<=<a[\s|\S]*?(?:href="))[^"]*
      

  7.   

    还是不明白...
    比如
    <a href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml" xxxxx> </a>   你要匹配到href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml" xxxxx
      

  8.   

    我要配出http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml
      

  9.   

    字符串拆分
     substring 这个方法的功能 用正则表达式来做 
      

  10.   

    5楼的结果不就是么...如果说不要引号
    <html>
        <head>
            <script language="javascript">
                window.onload=function(){
                    var str=document.body.innerHTML;
                    var a;
                    var rex=/<a\s.*?\s?href\s*=\s*['|"]?(.*)[\s'"]+.*?>/ig;
                    if( rex.test(str))
                         alert(RegExp.$1)
                }
            </script>
        </head>
        <body >           <a href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml" > </a>
        </body>
    </html>
      

  11.   

    字符串拆分 
    substring 这个方法的功能 用正则表达式来做 
      

  12.   

    1.用substring 位置变了就无法跟踪2.我上面用的就是正则..
      

  13.   

    或者<html>
        <head>
            <script language="javascript">
                window.onload=function(){
                    var str=document.body.innerHTML;
                    var a;
                    var rex=/['|"]?http:.*[\s'"]+/;
                    var c=rex.exec(str);
                    alert(c[0])
                        
                }
            </script>
        </head>
        <body >           <a href="http://tech.sina.com.cn/t/2009-10-23/09253531903.shtml" > </a>
        </body>
    </html>
      

  14.   

    为了更好的解释我用数字来代替的12341  匹配234  都是通过1来截取的(整个字符串是任意的,用来截取的标识也是字符串中任意的字符串)
    12145  匹配2
    12315  匹配23字符串拆分 
    substring 这个方法的功能 用正则表达式来做 
      

  15.   

    相差也太多了...<html>
        <head>
            <script language="javascript">
                window.onload=function(){
                    var str="12341";
                    var str1="12145";
                    var str2="12315";
                    var reg=/(\w)(.*)\1/;
                    var s1,s2,s3;
                    if(reg.test(str)){
                        s1=RegExp.$2;
                    }
                    if(reg.test(str1)){
                        s2=RegExp.$2;
                    }
                    if(reg.test(str2)){
                        s3=RegExp.$2;
                    }
                    alert(s1);
                    alert(s2);
                    alert(s3)
                }
            </script>
        </head>
       
    </html>
      

  16.   

    你这个正则写的很对。但是稍微点小毛病
    字符串 : <asd href="trip.house.sina.com.cn/lthd/2009-10-23/13241979.html" target="_blank" class="f16">大连交通交通运输业稳步发展</asd>&nbsp;&nbsp; <asd href=" http://iask.com/n?k=%BF%ED%B4%F8+&sc=%D0%C2%C0%CB">sddsdffsdsdf
    目的:提取任意两个字符串之间的  字符串例:提取(href=")与(")之间的字符串正则:href="(\S.*)"应该提取出 href="trip.house.sina.com.cn/lthd/2009-10-23/13241979.html"但是现在我的提取出了 
    href="trip.house.sina.com.cn/lthd/2009-10-23/13241979.html" target="_blank" class="f16">大连交通交通运输业稳步发展</asd>&nbsp;&nbsp; <asd href=" http://iask.com/n?k=%BF%ED%B4%F8+&sc=%D0%C2%C0%CB"
    <asd href="trip.house.sina.com.cn/lthd/2009-10-23/13241979.html" target="_blank" class="f16">大连交通交通运输业稳步发展</asd>&nbsp;&nbsp; <asd href=" http://iask.com/n?k=%BF%ED%B4%F8+&sc=%D0%C2%C0%CB">sddsdffsdsdf
      

  17.   


    <html>
        <head>
            <title> </title>        <script>
                window.onload=function(){
                    var str=document.body.innerHTML;
                    var reg=/href\s*=\s*\"(.*?)\"[\s\>]/img;
                    var s=[];
                    var index=0;
                    s[index]=reg.exec(str);
                    while(s[index])
                        s[++index]=reg.exec(str);
                    var ret=[];
                    for(var i=0;i<index;i++){
                        ret[i]=s[i][1];
                    }
                    alert(ret)
                }
            </script>
        </head>    <body >
        <asd href="trip.house.sina.com.cn/lthd/2009-10-23/13241979.html" target="_blank" class="f16">大连交通交通运输业稳步发展 </asd>&nbsp;&nbsp; <asd href=" http://iask.com/n?k=%BF%ED%B4%F8+&sc=%D0%C2%C0%CB">sddsdffsdsdf
        </body>
    </html>