/(.+?)\.([^\/]+).+/我想问一下这个正则表达式是怎么匹配得到douban.com这样的域名的

解决方案 »

  1.   


    (.+?)    匹配到了 douban
    \.       匹配到了 .
    ([^\/]+) 匹配到了 com所以最后的 .+ 可以去掉,修改为:/(.+?)\.([^\/]+)/
      

  2.   


    .可以匹配到任意字符.+ 是至少要匹配一个字符.+? 要结合起来看/(.+?)\.([^\/]+)/   这里的?号意思是尽量少的匹配(惰性匹配),如果不加问号的话是贪婪模式举例:<script type="text/javascript">
    var str = '<a href=\"index.html\">主页</a>';
    var rule1 = /<.*>/;
    alert(str.match(rule1));
    var rule2 = /<.*?>/;
    alert(str.match(rule2));</script>
      

  3.   


    <script type="text/javascript">
        var str = '<a href=\"index.html\">主页</a>';
        var rule1 = /<.*>/;
        alert(str.match(rule1)); //<a href="index.html">主页</a>
        var rule2 = /<.*?>/;
        alert(str.match(rule2));//<a href="index.html"></script>