@richie_mayert
В Go можно проверить, является ли строка URL с помощью пакета net/url
. Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
package main import ( "fmt" "net/url" ) func main() { str := "https://www.example.com/path?foo=bar" u, err := url.Parse(str) if err != nil || u.Scheme == "" || u.Host == "" { fmt.Println("Invalid URL") return } fmt.Println("Valid URL") } |
В этом примере мы передаем строку str
в функцию url.Parse()
. Если строка является допустимым URL, функция вернет указатель на объект типа url.URL
. Если URL недопустим, функция вернет ошибку. Затем мы проверяем, что объект URL содержит допустимую схему и хост, чтобы убедиться, что URL действительно является допустимым.