正則表達式識別字符串中的URL


一般我們經常看到一些在帖子或者別人的文章里,文字中間還會夾帶着很多的網址還有URL而且URL還是可以點擊進去的;還有另外一個較常用到的地方就是聊天系統中識別對話的URL,廢話不多說,入正題請看下面的代碼!

// 從字符串中提取url  
    function matchUrl(str){  
        res = str.replace(/((?:http:\/\/)(?:.[\w]+)+)/g,function(){  
            if (/^http/.test(arguments[1]))  
            {  
                return "<a class='urlTag'" + " onclick=webPage('"+arguments[1]+"') "  +"href='javascript:void(0)'>"+arguments[1]+"</a>";  
            } else {  
                return "<a class='urlTag'" + " onclick=webPage('http://"+arguments[1]+"') " +"href='javascript:void(0)'>"+arguments[1]+"</a>";  
            }  
        });  
        return res;  
    }  
result = matchUrl('http://www.cnblogs.com/jacko這是我的博客網站');  

alert(result);

(上面的正則是匹配URL沒有www開頭,如果有需要可以加個判斷)

<script type="text/javascript">  
    str = 'http://www.cnblogs.com/jacko';  
    result = str.match(/((?:http:\/\/)?w{3}(?:.[\w]+)+)/g);  
    if (result == null) {  
        result = str.match(/((?:http:\/\/)?(?:.[\w]+)+)/g);  
    };  
    document.write(result);  
</script> 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM