我有這個規律的例外:定期URL解析不以@符號工作正確
(?:([^\:]*)\:\/\/)?(?:([^\:\@]*)(?:\:([^\@]*))?\@)?(?:([^\/\:]*)\.(?=[^\.\/\:]*\.[^\.\/\:]*))?([^\.\/\:]*)(?:\.([^\/\.\:]*))?(?:\:([0-9]*))?(\/[^\?#]*(?=.*?\/)\/)?([^\?#]*)?(?:\?([^#]*))?(?:#(.*))?
1)如果解析網址:http://test.ru/long/path/file.ext?queryparam=123&more=234 - 其確定
2)如果解析URL :ftp://admin:[email protected]/long/path/file.ext - 其確定
3)但是,如果GET參數中存在[AT](@),那麼它是不正確的!
實施例:http://test.ru/long/path/file.ext?queryparam=123&[email protected]
PS。定期例外找到計算器,但不記得的話題。:(
這個正則表達式做什麼? – Blender 2013-02-25 09:07:38
如果你解釋任務是什麼以及表達如何完成它,你或許可以增強你的問題。這6個外部鏈接可能解釋它,但大多數用戶不會在意檢查。另外,爲什麼所有'@'都用反斜槓轉義? – 2013-02-25 09:09:33
這是一個通用的表達式來解析段的鏈接。 如果您使用它來解析GET參數中的URL,則存在@字符 - 所有涉及到此角色的他認爲是FTP登錄,因爲此表達式還可以反彙編和FTP URL。 – 2013-02-25 09:13:50