日期:2014-05-16  浏览次数:20418 次

求一个网址后缀提取的正则表达式
例如我访问:http://www.abc.com/temp/bbs/index.asp 则希望获得:index.asp 
例如我访问:http://adfadf.com 则没有任何后缀获得。
例如我访问:http://www.mmkkk.com/aaa/ 则没有任何后缀获得。
例如我访问:http://WWW.7799.net/ 也是没有任何后缀获得。
例如我访问:http://www.xx.net/aaa/bbb/default.htm 则希望获得:default.htm 
例如我访问:http://www.javaeye.com/topic/17434540002 则希望获得:17434540002
例如我访问:http://www.ccty.org/login.do?a=54&pwline=http://ccc.net/3ffa.php 则希望获得:login.do?a=54&pwline=http://ccc.net/3ffa.php
例如我访问:http://www.21cn.com/index 则希望获得:index

这个正则该如何写呢?谢谢~


------解决方案--------------------
HTML code

<script language=javascript>
        var a="http://www.abc.com/temp/bbs/index.asp"
        var b="http://adfadf.com"
        var c="http://www.mmkkk.com/aaa/"
        var d="http://WWW.7799.net/"
        var e="http://www.xx.net/aaa/bbb/default.htm"
        var f="http://www.javaeye.com/topic/17434540002"
        var g="http://www.ccty.org/login.do?a=54&pwline=http://ccc.net/3ffa.php"
        var h="http://www.21cn.com/index"
        var i="http://www.safsaf.net/bbs/dispuser.asp?username=张三"
       function show(str)
       {
           re=/http:\/\/([^?]+\/)+([^\/]+(\?.*)?)$/
           return (re.test(str))?RegExp.$2:""
       }
       alert(show(a))
       alert(show(b))
       alert(show(c))
       alert(show(d))
       alert(show(e))
       alert(show(f))
       alert(show(g))
       alert(show(h))
       alert(show(i))
</script>