我有这个规律的例外:定期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