NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
URL Regex Go バリデーター

URL Regex Go バリデーター

Qodex の URL Regex Go バリデーターは、Go で正規表現を使って文字列が有効なウェブリンクかどうかを素早くテスト・検証するためのツールです。リンクの解析、入力検証、ウェブスクレイピングに依存する Go アプリケーションの構築やデバッグに最適です。Email Regex Go バリデーター電話番号 Regex Go バリデーターGo Regex テスターと組み合わせることで、堅牢でセキュアな検証ロジックを構築できます。

URL Regex Go バリデーター - ドキュメント

Go での URL Regex とは何ですか?

Go(Golang)では、正規表現は組み込みの regexp パッケージによって処理されます。URL regex は、https://example.com/path のような有効なウェブリンクにマッチするためのパターンです。

Go の regex の主な用途:

  • ウェブサイト入力の検証(リンク、API)

  • スクレイピングした URL のクレンジング

  • バックエンドシステムのルートマッチャー構築

  • URL からのコンポーネント解析・抽出

URL Regex で使用するメタ文字

  • ^ : 文字列の先頭にパターンをアンカーします。

  • $ : 文字列の末尾にパターンをアンカーします。

  • . : 改行以外の任意の文字にマッチします。

  • + : 直前のトークンの1回以上の繰り返し。

  • * : 直前のトークンの0回以上の繰り返し。

  • ? : 直前のトークンの0回または1回。

  • [] : セットから1文字にマッチします。

  • () : トークンをグループ化します。

  • | : 論理 OR として機能します。

  • \\ : メタ文字をエスケープします。

使い方

  1. URL regex パターンを入力します。

  2. 検証したい URL 文字列を貼り付けます。

  3. 「検証」ボタンをクリックしてマッチするか確認します。

  4. 「別のを試す」ボタンで異なる例を繰り返しテストします。

例 1:基本的な URL バリデーター(Go)

完全な regex ロジックは Go Regex テスターでテストできます。

package main

import ( "fmt" "regexp" )

func isValidURL(url string) bool { var pattern = ^(http|https)://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[a-zA-Z0-9-._~:?#@!$&'()*+,;=]*)*$ urlRegex := regexp.MustCompile(pattern) return urlRegex.MatchString(url) }

func main() { testURL := "https://www.example.com/search?q=test" fmt.Println("Valid URL:", isValidURL(testURL)) }

例:

  • 入力: "https://www.example.com/search?q=test"
    出力: Valid URL: true
    説明: この URL は正しいフォーマットで、検証パターンにマッチします。

  • 入力: "https://www.example.com/ ,search"
    出力: Valid URL: false
    説明: このURL はカンマの後にスペースが含まれており、パターンに従って無効です。

例 2:短縮 URL のマッチング

フロントエンド検証を行っている場合は、JavaScript Regex テスターでもこのパターンをテストできます。

var shortURL = "http://bit.ly/3abc"
var regex = regexp.MustCompile(^https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[a-zA-Z0-9-]*)?$)
fmt.Println("Valid short URL:", regex.MatchString(shortURL))

例:

  • 入力: "http://bit.ly/3abc"
    出力: Valid short URL: true

  • 入力: "http://bit.ly/ 3abc"
    出力: Valid short URL: false
    説明: ドメインの後のスペースが検証を失敗させます。

例 3:末尾スラッシュのオプション対応

テスト用のリアルなドメインや IP が必要な場合は、ドメイン名ジェネレーターまたは IPv4 ジェネレーターをご利用ください。

var urlWithSlash = "https://qodex.ai/"
var regex = regexp.MustCompile(^https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/?$)
fmt.Println("URL has optional trailing slash:", regex.MatchString(urlWithSlash))

例:

  • 入力: "https://qodex.ai/"
    出力: true
    説明: この URL は末尾スラッシュで終わっており、パターンで許可されています。

  • 入力: "https://qodex.ai"
    出力: true
    説明: 末尾スラッシュはオプションなので、どちらの形式も有効です。

URL 検証の時間・空間計算量

  • 時間計算量: 文字列の各文字が regex エンジンによって一度検査されるため、通常 O(N)(N は入力 URL の長さ)です。

  • 空間計算量: 少数の変数以外に大きな追加メモリは不要なため、O(1) です。

Go での URL Regex 使用のプロのヒント

  • 部分一致を避けるため、常に ^ と $ でパターンをアンカーしてください。

  • ドメイン名のリテラルドットにマッチするために . を \. にエスケープしてください。

  • HTTP と HTTPS 両方のプロトコルを許可するには https? を使用してください。

  • 複数のパス文字を許可するには + を使用してください。

  • 堅牢な検証のために、クエリ文字列とパスを含む完全な URL を検証してください。

主なユースケース

  • フォーム入力検証(ユーザー送信の URL)

  • ウェブスクレイパー出力のクレンジング

  • API URL の解析

  • CMS リンクの検証

  • マーケティングキャンペーントラッカーの検証

Python での URL 検証

regex は Go だけのものではありません!Python バックエンドを構築している場合は、re モジュールを使って数行で URL を検証できます。

import re

def is_valid_url(url): # 基本的な URL 検証 regex pattern = r'^(https?://)?[a-zA-Z0-9.-]+.[a-zA-Z]{2,}(/[^\s]*)?$' return re.match(pattern, url) is not None

使用例

test_url = "https://www.example-site.org/path?query=123" print("Valid URL:", is_valid_url(test_url))

組み合わせをお勧めするツール

Frequently Asked Questions

URL regex パターンは何をチェックしますか?

プロトコル(http/https)の存在、ドメイン名、オプションのパスやクエリパラメーターを検証します。

クエリ文字列やアンカーを含む URL にマッチできますか?

はい。regex には ?、=、# のようなクエリやアンカーで使用される特殊文字が含まれています。

ツールは大文字小文字を区別しないマッチングをサポートしていますか?

はい。大文字小文字を区別しないマッチングには、regex パターンに (?i) フラグを使用できます。

このツールは Go の regex 専用ですか?

このツールは Go 向けに最適化されていますが、Java Regex テスターや Python Regex テスターでも同様のロジックをテストできます。

API エンドポイントの検証に使用できますか?

もちろんです。このツールを使って REST API パス、CDN リンク、その他の動的 URL を確認できます。

APIをテストしてみましょう!

平易な日本語で記述するだけで、Qodex がセキュアですぐに実行できるテストに変換します。