ホームページ バックエンド開発 PHPチュートリアル PHP正規表現を使用してURLアドレス形式を確認する方法

PHP正規表現を使用してURLアドレス形式を確認する方法

Jun 24, 2023 am 09:51 AM
PHPの正規表現 URLアドレスを確認してください URL形式

インターネットの急速な発展に伴い、URL アドレスは人々の日常生活に欠かせないものになりました。 Web 開発では、ユーザーが入力した URL アドレスがシステムで正しく認識され、使用されることを確認するために、形式検証を実行する必要があります。この記事では、PHP 正規表現を使用して URL アドレス形式を確認する方法を紹介します。

1. URL アドレスの基本コンポーネント

URL アドレス形式を確認する方法を理解する前に、まず URL アドレスの基本コンポーネントを理解する必要があります。通常、標準の URL アドレスは次の部分で構成されます:

1. 通信プロトコル部分 (プロトコル): クライアントとサーバー間の通信のプロトコルを指定します。一般的なものには、http プロトコルと https プロトコルが含まれます。

2. ホスト部(host): 接続するサーバーのホスト名またはIPアドレスを指定します。

3. ポート番号部分(port): 接続するサーバーが使用するポート番号を指定します。通常はホスト名とプロトコルによって決まるデフォルト値です。

4. パス部分 (path): サーバー上の特定のページまたはファイルへのパスを指定します。

5. クエリ文字列部分 (querystring): クライアントからサーバーに渡される追加パラメータ。

6. フラグメント識別子部分(fragment identifier): リソース内の位置を指定します。

2. PHP は正規表現を使用して URL アドレス形式を検証します

PHP では、正規表現を使用して preg_match 関数を使用することにより、URL アドレス形式を簡単に検証できます。

1. 通信プロトコルの確認

正規表現 /^https?:/// を使用して、URL アドレスの通信プロトコルが正当かどうかを確認します。このうち、^ は文字列の先頭と一致し、https? は http または https プロトコルの選択を示し、// は「//」文字と一致することを示します。

サンプル コード:

$url = "http://www.example.com";
if(preg_match('/^https?:///', $url)){
    echo "通讯协议合法";
} else {
    echo "通讯协议不合法";
}
ログイン後にコピー

2. ホスト名を確認します

正規表現 /^[A-Za-z0-9.-] .[A-Za- z を使用します。 ]{2,}$/ は、URL アドレスのホスト名が正当であるかどうかを検証できます。このうち [A-Za-z0-9.-] はホスト名に文字、数字、ダッシュ、ピリオドを含めることができ、1 回以上一致することを意味し、.[A-Za-z]{2,}$ はホスト名に文字、数字、ダッシュ、ピリオドを含めることを意味します。ピリオドの後に少なくとも 2 文字の文字列が続くものと一致します。文字列は URL アドレスの末尾である必要があります。

サンプル コード:

$url = "http://www.example.com";
if(preg_match('/^[A-Za-z0-9.-]+.[A-Za-z]{2,}$/', parse_url($url, PHP_URL_HOST))){
    echo "主机名合法";
} else {
    echo "主机名不合法";
}
ログイン後にコピー

3. ポート番号を確認します

正規表現 /:d $/ を使用して、URL アドレスのポート番号が正当かどうかを確認します。その中で、: はコロン文字と一致することを意味し、d は 1 つ以上の数字と一致することを意味し、数字は URL アドレスの末尾である必要があります。

サンプル コード:

$url = "http://www.example.com:8888";
if(preg_match('/:d+$/', parse_url($url, PHP_URL_PORT))){
    echo "端口号合法";
} else {
    echo "端口号不合法";
}
ログイン後にコピー

4. パスの確認

正規表現 /^[/w.-] $/ を使用して、URL アドレスのパスが正しいかどうかを確認します。合法です。このうち、^ は文字列の先頭に一致し、[/w.-] はパスにスラッシュ、文字、数字、アンダースコア、ピリオドを含めることができ、少なくとも 1 文字に一致することを意味し、$ は文字列の末尾に一致することを意味します。

サンプル コード:

$url = "http://www.example.com/path/to/page.html";
if(preg_match('/^[/w.-]+$/', parse_url($url, PHP_URL_PATH))){
    echo "路径合法";
} else {
    echo "路径不合法";
}
ログイン後にコピー

5. クエリ文字列の検証

正規表現 /^?. $/ を使用して、URL アドレスのクエリ文字列が正当かどうかを検証します。このうち、^ は文字列の先頭と一致し、? は疑問符文字と一致し、. は少なくとも 1 文字と一致し、$ は文字列の末尾と一致します。

サンプルコード:

$url = "http://www.example.com/path/to/page.html?param=value";
if(preg_match('/^?.+$/', parse_url($url, PHP_URL_QUERY))){
    echo "查询字符串合法";
} else {
    echo "查询字符串不合法";
}
ログイン後にコピー

6. URL アドレスの完全な形式を確認する

上記の 5 つの正規表現を通じて、URL アドレスの各部分が正しいかどうかを確認できます。一つ一つ合法的に。しかし、より一般的なアプローチは、それらを組み合わせて、URL アドレス全体の完全な形式が正当であるかどうかを検証することです。

たとえば、次の正規表現は、URL アドレスの完全な形式が正当であるかどうかを検証できます。

/^https?://[A-Za-z0-9.-]+.[A-Za-z]{2,}(:d+)?(/[w.-]*)*(?.*)?$/i
ログイン後にコピー

ここで、i は大文字と小文字を区別しないことを意味します。この正規表現には、通信プロトコル、ホスト名、ポート番号、パス、およびクエリ文字列が正当であるかどうかを検証するために使用される複数の部分表現が含まれています。

サンプル コード:

$url = "http://www.example.com/path/to/page.html?param=value";
if(preg_match('/^https?://[A-Za-z0-9.-]+.[A-Za-z]{2,}(:d+)?(/[w.-]*)*(?.*)?$/i', $url)){
    echo "URL地址合法";
} else {
    echo "URL地址不合法";
}
ログイン後にコピー

概要:

この記事では、PHP 正規表現を使用して URL アドレス形式を確認する方法を紹介します。通信プロトコル、ホスト名、ポート番号、パス、クエリ文字列が正当であるかどうかを検証することで、URL アドレスの有効性を迅速に検出し、ユーザーが入力した URL アドレスをシステムが正しく使用できることを確認できます。

以上がPHP正規表現を使用してURLアドレス形式を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP 正規表現を使用して入力が IPv6 アドレスであるかどうかを確認する方法 PHP 正規表現を使用して入力が IPv6 アドレスであるかどうかを確認する方法 Jun 25, 2023 am 09:37 AM

IPv6 は、インターネット通信に使用される IP アドレス プロトコルである InternetProtocolVersion6 を指します。 IPv6 アドレスは 128 ビットで構成される数値であり、通常は 8 つの 16 進数グループで表されます。 PHP では、正規表現を使用して、入力が IPv6 アドレスであるかどうかを確認できます。ここでは、PHP 正規表現を使用して IPv6 アドレスを確認する方法を説明します。ステップ 1: IPv6 アドレスの形式を理解する IPv6 アドレスは 8 つの 16 進数ブロックで構成され、それぞれのブロックは

PHP正規表現を使用して文字列が空かどうかを確認する方法 PHP正規表現を使用して文字列が空かどうかを確認する方法 Jun 24, 2023 am 08:46 AM

PHP では、正規表現を使用して文字列が空かどうかを確認できます。文字列が空である場合には、次のようなケースが含まれます。 文字列にスペースのみが含まれています。文字列の長さは 0 です。文字列が null または未定義です。次に、PHP で正規表現を使用してこれらの状況を検証する方法について説明します。正規表現: s+ この正規表現は、スペースのみを含む文字列と一致するために使用できます。ここで、s はスペースの一致を意味し、+ は 1 つ以上の一致を意味します。コード例: functionisEmptySt

PHP正規表現を使用して電話番号の形式を検証する方法 PHP正規表現を使用して電話番号の形式を検証する方法 Jun 24, 2023 am 08:44 AM

Web アプリケーションを作成する場合、多くの場合、電話番号を検証する必要があります。 PHP の一般的な方法は、正規表現を使用して電話番号が正しい形式であるかどうかを判断することです。正規表現は、簡潔なステートメント内の特定のパターンを識別するのに役立つ強力なツールです。以下は、PHP で正規表現を使用して電話番号の形式を検証する例です。まず、電話番号の一般的な形式を定義しましょう。電話番号には、数字、括弧、ハイフン、スペースを含めることができます。標準の電話番号には 10 桁の数字が含まれており、その前に

入力文字列が ID 番号またはパスポート番号の形式であるかどうかを確認するための PHP 正規表現 入力文字列が ID 番号またはパスポート番号の形式であるかどうかを確認するための PHP 正規表現 Jun 24, 2023 pm 12:11 PM

ID 番号とパスポート番号は、人々の生活の中でよく使われる文書番号です。これらの文書番号に関連する機能を実装する場合、多くの場合、入力された番号の形式検証を実行して、その正確性を確認する必要があります。 PHP では、この機能を実現するために正規表現を使用することができますが、この記事では、PHP の正規表現を使用して、入力文字列が ID 番号またはパスポート番号の形式であるかどうかを確認する方法を紹介します。 1. ID カード番号の確認 ID カード番号は 18 桁で構成されており、最後の 1 桁は文字 (チェック コード) の場合があり、その形式は次のとおりです。

PHP正規表現を使用してURLアドレス形式を確認する方法 PHP正規表現を使用してURLアドレス形式を確認する方法 Jun 24, 2023 am 09:51 AM

インターネットの急速な発展に伴い、URL アドレスは人々の日常生活に欠かせないものになりました。 Web 開発では、ユーザーが入力した URL アドレスがシステムで正しく認識され、使用されることを確認するために、形式検証を実行する必要があります。この記事では、PHP 正規表現を使用して URL アドレス形式を確認する方法を紹介します。 1. URL アドレスの基本コンポーネント URL アドレス形式を確認する方法を理解する前に、まず URL アドレスの基本コンポーネントを理解する必要があります。通常、標準の URL アドレスは次のもので構成されます。

PHPで正規表現を使用してファイルパスであるかどうかを確認する方法 PHPで正規表現を使用してファイルパスであるかどうかを確認する方法 Jun 24, 2023 am 10:18 AM

PHP では、正規表現は文字列の照合および検証ツールとしてよく使用されます。開発プロセス中、入力ファイルのパスが正しい形式であることを確認するために頻繁に検証する必要があります。この記事では、正規表現を使用して文字列がファイル パスであるかどうかを確認する方法を紹介します。まず、ファイル パスの基本形式を決定する必要があります。 Windows システムでは、一般的なファイル パスは「C:ProgramFilesPHPphp.exe」のような形式です。パスは次の部分に分かれています。

PHP 正規表現を使用して特定の長さの入力を検証する方法 PHP 正規表現を使用して特定の長さの入力を検証する方法 Jun 24, 2023 am 10:17 AM

Web アプリケーションを開発する場合、多くの場合、ユーザー入力が特定の形式と長さの要件に準拠していることを確認する必要があります。 PHP 正規表現は、強力な検証方法を提供します。この記事では、PHP 正規表現を使用して特定の長さの入力を検証する方法を紹介します。入力長の要件を決定する 正規表現の作成を開始する前に、入力長の要件を決定する必要があります。たとえば、ユーザーが長さ 8 のパスワードを入力するように求められた場合、正規表現は 8 文字以上の文字列と一致するのではなく、8 文字と一致する必要があります。正規表現の書き込み

PHP で正規表現を使用して入力が IPv4 アドレスであるかどうかを確認する方法 PHP で正規表現を使用して入力が IPv4 アドレスであるかどうかを確認する方法 Jun 24, 2023 am 09:20 AM

PHP は、一般的なサーバーサイド プログラミング言語として、入力データの正確性を検証するための強力なツールをいくつか提供します。この記事では、正規表現を使用して入力が IPv4 アドレスであるかどうかを確認する方法に焦点を当てます。まず、IPv4アドレスとは何でしょうか? IPv4 アドレスは 32 ビットの 2 進数を指し、通常は 4 つの 8 ビット 2 進数に分割され、「.」で区切られ、10 進数形式で表されます。たとえば、127.0.0.1 は IPv4 アドレスです。それでは、正規表現を使用して次のことを行う方法を見てみましょう。

See all articles