1
我做了一个正则表达式匹配一些网址:URL分析正则表达式
它必须匹配:协议(HTTP,HTTPS),用户名(用户名@ --IF有的话)的passord(用户名:密码@ - 如果有),主机名(asdf.asdf(etc)或123.154.213.255)端口(:80 - 如果有的话)和路径(以反斜杠开始,则它遵循/或。之间的任意组合或任何字母或数字)。
我正则表达式至今:
\b(https?)://([a-z]*[email protected]|[a-z]*?:[a-z]*[email protected])?((([01][0-9][0-9]|2[0-4][0-9]|25[0-5]|[0-9]|[1-9][0-9])\.([01][0-9][0-9]|2[0-4][0-9]|25[0-5]|[0-9]|[1-9][0-9])\.([01][0-9][0-9]|2[0-4][0-9]|25[0-5]|[0-9]|[1-9][0-9])\.([01][0-9][0-9]|2[0-4][0-9]|25[0-5]|[0-9]|[1-9][0-9]))|([a-z]*\.?)*[a-z])(:[0-9]*)?
它有点难以阅读。 我的问题是找到路径....直到现在我已经尝试(/?)找到第一个(可能)/然后我试图(/?/|\.|[a-z]|[0-9]*)
匹配任何/或。或者[a-z0-9],但是很多时候都可以,但它不起作用。
不要忘了IPv6的addressess(如通过'http:// [:: 1]:80 /') – Erbureth
我只是在寻找我在我的问题描述,而不是实际的真实的URL网址的特定类型 – Thanatos
你使用什么语言? – VladL