ホームページ  >  記事  >  バックエンド開発  >  プロトコルの有無にかかわらず URL を照合するためのユニバーサル正規表現

プロトコルの有無にかかわらず URL を照合するためのユニバーサル正規表現

DDD
DDDオリジナル
2024-10-22 08:47:30858ブラウズ

Universal Regular Expression for URL Matching with or without Protocols

プロトコルの有無にかかわらず URL を照合する正規表現

「http://www」プレフィックスが含まれる場合と含まれない場合がある URL の場合、正規表現を使用して一致操作を実行できます。詳細な RegEx パターンを以下に示します。

((https?|ftp)://)?([a-z0-9+!*(),;?&amp=$_.-]+(:[a-z0-9+!*(),;?&amp=$_.-]+)?@)?([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))(:[0-9]{2,5})?(/([a-z0-9+$_%-]\.?)+)*/?(\?[a-z+&$_.-][a-z0-9;:@&%=+/$_.-]*)?(\#[a-z_.-][a-z0-9+$%_.-]*)?

URL 検証にこのパターンを利用するには、次の方法で適用できます。

<code class="php">if (preg_match("~^$regex$~i", 'www.example.com/etcetc', $m))
    var_dump($m);

if (preg_match("~^$regex$~i", 'http://www.example.com/etcetc', $m))
    var_dump($m);</code>

この RegEx ソリューションは、包括的な方法を提供します。 「http://」プレフィックスが含まれているかどうかに関係なく、URL と一致します。

以上がプロトコルの有無にかかわらず URL を照合するためのユニバーサル正規表現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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