如何在go中检测有效的URL?

时间:2016-01-20 03:50:20

标签: go

在我使用其余API向其发送请求之前,我想在我的程序中输入有效网址时尝试检查有效网址。我在go中使用了regexp包。以下是我的正则表达式:

urlRegex := "^(https?://)[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"

我使用regexp.MatchString()方法将其与我的输入相匹配。

match, _ := regexp.MatchString(urlRegex, args[0])

但是,这为http:////:9000 or http://a.

等案例提供了有效的网址

我是否可以导入任何包以进行更强大的网址检查?

1 个答案:

答案 0 :(得分:2)

您想要使用net/url.Parse()

 import (
         "net/url"
 )

_, err := url.Parse(args[0])