我正在尝试构建一个正则表达式来匹配任何git读写URL结构(不仅仅是
GitHub),我想检查一下我是否正确使用正则表达式.这就是我到目前为止所拥有的
([A-Za-z0-9]+@|http(|s)\:\/\/)([A-Za-z0-9.]+)(:|/)([A-Za-z0-9\/]+)(\.git)?
该正则表达式匹配以下所有URL
> git@github.com:user / project.git
> https://github.com/user/project.git
> http://github.com/user/project.git
> git@192.168.101.127:user / project.git
> https://192.168.101.127/user/project.git
> http://192.168.101.127/user/project.git
> http://192.168.101.127/user/project
还有其他人喜欢非顶级域名和单一域名(http:// server /).是否有其他网址结构我应该是有意思的?还有一种更短的方式来编写我现有的正则表达式吗?
解决方法
如果您使用rails / ruby编写程序,请查看此项.您可以从这里获得一些想法:
http://www.simonecarletti.com/blog/2009/04/validating-the-format-of-an-url-with-rails/