Как проверить, является ли строка url в golang?

Пользователь

от willa_will , в категории: Golang , 8 месяцев назад

Как проверить, является ли строка url в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от linnea , 8 месяцев назад

@willa_will 

В Go можно использовать пакет net/url для проверки, является ли строка URL.


Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
package main

import (
    "fmt"
    "net/url"
)

func main() {
    urlStr := "https://example.com"

    // Парсим строку URL 
    u, err := url.Parse(urlStr)
    if err != nil || u.Scheme == "" || u.Host == "" {
        fmt.Println("Строка не является URL")
        return
    }

    fmt.Println("Строка является URL")
}


В этом примере мы используем функцию url.Parse() из пакета net/url для парсинга строки URL. Затем мы проверяем наличие схемы и хоста в результатах парсинга. Если схема или хост пустые, это означает, что строка не является URL.