日々の PHP 開発では、文字列の一致と置換に正規表現を使用する必要があることがよくあります。その中でも、URL リンクの一致は非常に一般的な要件です。この記事では、PHP で正規表現を使用してさまざまな URL リンクを照合する方法を紹介します。
共通 URL リンクとは、http または https で始まるリンクを指します。次の正規表現を使用してそれらを照合できます:
$pattern = "/((http|https)://[w-_]+(.[w-_]+)+([w-.,@?^=%&:/~+#!]*[w-@?^=%&/~+#])?)/i";
ここで、i は大文字と小文字を区別しないことを意味します。この正規表現は、次のタイプの URL リンクと一致します。
http://www.example.com http://www.example.com/index.php http://www.example.com/?id=123 https://www.example.com https://www.example.com/index.php https://www.example.com/?id=123
通常の URL リンクに加えて、IP アドレスも一致する必要がある場合があります。リンク。次の正規表現を使用してそれらを照合できます:
$pattern = "/((http|https)://)?(d{1,3}.d{1,3}.d{1,3}.d{1,3})(:d{1,5})?([w-.,@?^=%&:/~+#!]*[w-@?^=%&/~+#])?/i";
この正規表現は次の URL リンクと照合できます:
http://192.168.0.1 http://192.168.0.1/index.php http://192.168.0.1/?id=123 https://192.168.0.1 https://192.168.0.1/index.php https://192.168.0.1/?id=123
$pattern = "/((http|https)://)?(www.)?[w-_]+(.[w-_]+)+([w-.,@?^=%&:/~+#!]*[w-@?^=%&/~+#])?/i";
この正規表現は次のタイプの URL リンクに照合できます:
http://www.example.com http://www.example.com/index.php http://www.example.com/?id=123 https://www.example.com https://www.example.com/index.php https://www.example.com/?id=123非プロトコル リンクの照合
$pattern = "/(^|[ ])([w]+?://[w]+[^ " <]*)|(^|[ ])([w]+?//[w]+[^ " <]*)|(^|[ ])(//[w]+[^ " <]*)/i";
この正規表現は、次のタイプの URL リンクに照合できます:
//www.example.com //www.example.com/index.php //www.example.com/?id=123さまざまな混合リンクに照合
$pattern = "/((http|https)://)?([a-zA-Z0-9-.]+(.[a-zA-Z]{2,3})(:d{1,5})?)([w-.,@?^=%&:/~+#]*[w-@?^=%&/~+#])?/i";
http://www.example.com/index.php?id=123#top https://www.example.com/home?name=john&age=20 https://www.example.com/1+1=2これまで、正規表現の使用方法を紹介しました。 URL リンク。実際の開発では、必要に応じて適切な正規表現を選択してマッチングを完了できます。同時に、正規表現はパフォーマンスに一定の影響を与えるため、大量のデータを処理する場合はパフォーマンスの問題に注意する必要があることに注意してください。
以上がPHP で正規表現を使用して URL リンクを照合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。