PHP 正規表現の動作: URL の一致

WBOY
リリース: 2023-06-22 19:12:01
オリジナル
2199 人が閲覧しました

PHP 正規表現の練習: URL のマッチング

インターネットの普及により、URL は日常生活に欠かせないものになりました。 Web デザインやデータ クローリングなどでは、URL を照合するために正規表現を使用する必要があることがよくあります。この記事では、PHP の正規表現を使用して URL を照合する方法に焦点を当てます。

URL の基本構造

まず、URL の基本構造を理解しましょう。一般に、URL は次の部分で構成されます。

プロトコル名: http、https など
ホスト名: ドメイン名または IP アドレス
ポート番号: 80、8080 など (オプション)
Path: ページの特定の場所を指す (オプション)
クエリ文字列: GET リクエスト中に渡されるパラメーター (オプション)
Fragment: ページ内の特定の場所を指すアンカー ポイント (オプション)

いくつかの例:

http://www.example.com:8080/index.html?id=1#top
https://192.168.1.1/ aboutUs.html
https://www.google.com/search?q=php 正規表現
ftp://ftp.example.com/public/files/manual.pdf

上記の例には、さまざまなプロトコル、ホスト名、ポート番号、パス、クエリ文字列、フラグメントが含まれています。

正規表現の概念

正規表現は、複数の種類の情報を照合するために使用できる文字列照合メカニズムです。正規表現は通常、いくつかの特殊文字、通常の文字、括弧、および文字の数、位置、種類を指定するために使用できるその他のパラメータで構成されます。 PHP では、preg_match() 関数を使用して正規表現を照合できます。

単純な正規表現を作成する

上記の基本概念を理解した後、URL に一致する単純な正規表現を作成できます。以下は具体的な例です:

$pattern = '/^((http|https|ftp)://)?[a-z0-9-] (.[a-z0-9-] ) ([/?#:][^s]*)?$/';
$url = 'http://www.example.com/index.html?id=1';

preg_match($pattern, $url, $matches);
print_r($matches);

上記の例では、URL と一致する正規表現 $pattern を定義し、preg_match を使用します。 () 関数を照合します。最後に、照合結果が出力されます。

分析コード

正規表現は、基本構造と、プロトコル名、ホスト名、パスなどの各コンポーネントの一致部分の 2 つの部分で構成されます。以下で一つずつ説明していきましょう。

基本構造: '^((http|https|ftp)://)?'

  • '^' は行の先頭と一致することを意味します
  • 「http| https|ftp」は、http、https、または ftp プロトコルと一致することを意味します。
  • 「://」は、2 つの文字://'、つまりプロトコル名とホスト名の間の区切り文字と一致することを意味します
  • ' ?' は、前のコンテンツがオプションであることを意味します (一部の URL にはプロトコル名がない場合があるため)

プロトコル名: '(http|https|ftp)://'

ホスト名: '[a-z0-9-] (.[a-z0-9-] ) '

  • '[a-z0-9-] ' の意味ドメイン名内の文字または数字または '-' と一致する、少なくとも 1 回一致する
  • '(.[a-z0-9-] ) ' は、ドメイン名とドメインのコンテンツの後の . と一致することを意味します名前、少なくとも 1 回一致

パス、クエリ文字列およびフラグメント: '([/?#:]1*)?'

  • '[/?#:]' パス、クエリ文字列、フラグメントの前にあるさまざまな特殊文字 (「/」、「?」、「#」、「:'
  • #」など) と一致します。 ##'
  • 2' はスペースを除く任意の文字を意味し、'*' は前のコンテンツと何度でも一致することを意味します (つまり、オプション)
要約すると、上記の正規表現はあらゆるタイプの URL に一致します。注意すべき点は、実際の開発では、特定のニーズに応じて正規表現のルールを変更または拡張する必要がある場合があるということです。

概要

正規表現は PHP で広く使用されており、文字、数字、電子メール、電話番号などのさまざまな種類の情報を照合および検証するために使用できます。上記の記事では、正規表現を使用して URL を照合する方法を紹介し、正規表現の基本概念も簡単に紹介しています。読者が正規表現の適用についてより深く理解できることを願っています。


    s
  1. \s

以上がPHP 正規表現の動作: URL の一致の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート