ホームページ  >  記事  >  バックエンド開発  >  golang で正規表現を使用して URL アドレスが第 5 レベルのドメイン名であるかどうかを確認する方法

golang で正規表現を使用して URL アドレスが第 5 レベルのドメイン名であるかどうかを確認する方法

WBOY
WBOYオリジナル
2023-06-24 08:36:13756ブラウズ

golang で正規表現を使用して、URL アドレスが第 5 レベルのドメイン名であるかどうかを確認するには、次の手順を実行します。

まず、第 5 レベルのドメイン名とは何かを理解する必要があります。これは完全なドメイン名を指します。例: https://www.example.com.cn の 5 つの部分で構成されます。5 つの部分は、プロトコル、ホスト名、第 2 レベルのドメイン名、第 3 レベルのドメイン名、およびトップレベルのドメイン名。この記事では、URL アドレスが第 5 レベル ドメイン名の形式であるかどうかを確認します。

次に、golang で正規表現を使用する方法を理解する必要があります。 golang の regexp パッケージを使用して正規表現マッチングを実装できます。使用方法は次のとおりです:

import "regexp"

func main() {
    match, err := regexp.MatchString("正则表达式", "匹配的字符串")
    if err != nil {
        // 处理错误
    }
    if match {
        // 匹配成功
    } else {
        // 匹配失败
    }
}

次に、URL アドレスが 5 番目の形式であるかどうかを確認する正規表現を記述する必要があります。 -レベルのドメイン名。正規表現には次の部分が含まれている必要があります:

  1. 一致するプロトコル部分: http または https にすることができます。
  2. ホスト名の部分と一致します。www.example.com.cn など、任意の有効なホスト名を使用できます。
  3. 第 2 レベルのドメイン名の部分と一致します。abc.example.com.cn など、任意の有効な第 2 レベルのドメイン名を指定できます。
  4. 第 3 レベルのドメイン名の部分と一致します。xyz.abc.example.com.cn など、任意の有効な第 3 レベルのドメイン名を指定できます。
  5. トップレベル ドメイン名の部分と一致します。これは、.cn、.com などの指定されたトップレベル ドメイン名にすることができます。

要約すると、URL アドレスが第 5 レベルのドメイン名であるかどうかを検証できる正規表現は次のとおりです。

^(http|https)://([a-z0-9-]+.)+[a-z0-9-]{2,}$ 

最後に、上記の正規表現を使用して次のことを行います。 URL を確認します。アドレスが第 5 レベルのドメイン名の形式であるかどうかを確認します。コードは次のとおりです。

import "regexp"

func isValidURL(url string) bool {
    re := regexp.MustCompile(`^(http|https)://([a-z0-9-]+.)+[a-z0-9-]{2,}$`)
    return re.MatchString(url)
}

func main() {
    url := "https://www.example.com.cn"
    if isValidURL(url) {
        fmt.Println("URL地址是五级域名的格式")
    } else {
        fmt.Println("URL地址不是五级域名的格式")
    }
}

上記のコードでは、URL アドレスが第 5 レベルのドメイン名の形式であるかどうかを確認します。 isValidURL 関数を呼び出してレベル ドメイン名を取得します。 URL アドレスが第 5 レベルのドメイン名の形式である場合、関数は true を返し、それ以外の場合は false を返します。

概要:

この記事では、正規表現を使用して、URL アドレスが golang の第 5 レベル ドメイン名の形式であるかどうかを確認する方法を紹介します。実際のアプリケーションでは、実際の状況に応じて URL アドレスの形式を検証するために、対応する正規表現を記述する必要があることに注意してください。

以上がgolang で正規表現を使用して URL アドレスが第 5 レベルのドメイン名であるかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。