在 Go 语言中,可以使用 net/url 包来判断一个字符串是否为有效的 URL。具体实现如下:

import (
    "net/url"
)

func isValidURL(str string) bool {
    u, err := url.Parse(str)
    return err == nil && u.Scheme != "" && u.Host != ""
}

解释一下上面的代码:

  1. 首先引入 net/url 包。
  2. 定义一个名为 isValidURL 的函数,它接受一个字符串参数 str,用于判断是否为有效的 URL。
  3. 在函数内部,使用 url.Parse 方法将字符串解析为一个 *url.URL 类型的对象 u
  4. 如果解析过程中没有出现错误,并且 u.Schemeu.Host 属性都不为空,那么就认为这个字符串是一个有效的 URL,返回 true;否则返回 false

使用示例:

fmt.Println(isValidURL("https://www.google.com")) // true
fmt.Println(isValidURL("http://localhost:3000")) // true
fmt.Println(isValidURL("invalid-url")) // false
golang 判断是否为有效的url

原文地址: https://www.cveoy.top/t/topic/vqe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录