ホームページ >バックエンド開発 >PHPチュートリアル >プロトコルとドメインプレフィックスの有無にかかわらず URL を照合するにはどうすればよいですか?
プロトコルとドメイン プレフィックスの有無にかかわらず URL を照合する
URL を操作する場合、多くの場合、URL にHTTP/HTTPS プロトコルまたは「www」ドメイン プレフィックス。これを実現するための正規表現の詳細な内訳は次のとおりです。
<code class="php">$regex = "(https?|ftp)://)?"; // SCHEME (Optional) $regex .= "([a-z0-9+!*(),;?&=$_.-]+(:[a-z0-9+!*(),;?&=$_.-]+)?@)?"; // User and Pass (Optional) $regex .= "([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))"; // Host or IP address $regex .= "((:[0-9]{2,5})?)?"; // Port (Optional) $regex .= "(/([a-z0-9+$_%-]\.?)+)*/?"; // Path (Optional) $regex .= "(?=[a-z+&$_.-][a-z0-9;:@&%=+/$_.-]*)?"; // GET Query (Optional) $regex .= "(#[a-z_.-][a-z0-9+$%_.-]*)?"; // Anchor (Optional)</code>
説明:
この正規表現と照合するには、次の構文を使用します。
<code class="php">preg_match("~^$regex$~i", $url, $m);</code>
これにより、URL 全体がパターンに一致し、オプションの部分が含まれることが保証されます。この正規表現を使用すると、さまざまな形式の URL を確実に照合できます。
以上がプロトコルとドメインプレフィックスの有無にかかわらず URL を照合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。