ホームページ バックエンド開発 PHPチュートリアル PHP_PHP チュートリアルでの正規表現マッチングの実装の簡単な分析

PHP_PHP チュートリアルでの正規表現マッチングの実装の簡単な分析

Jul 15, 2016 pm 01:26 PM
php マッチ 存在する 成し遂げる 私たち はい 通常 使用 表現

PHP 正規表現マッチングの実装の簡単な分析

PHP での正規表現のアプリケーションについて話すとき、PHP 正規表現マッチングは最終目標です。では、PHP 正規表現マッチングを実装するにはどうすればよいでしょうか?具体的にはどのような手法が用いられるのでしょうか?具体的に見てみましょう。

PHP は UNIX の一貫した伝統を継承しており、正規表現の処理を完全にサポートしています。正規表現は、高度ではありますが、直感的ではない文字列の照合と処理の方法を提供します。 PERL の正規表現を使用したことのある友人は、正規表現が非常に強力であることを知っていますが、習得するのは簡単ではありません。

PHP 正規表現マッチングのサンプル アプリケーション:

<ol class="dp-c"><li class="alt"><span><span>^.+@.+..+$  </span></span></li></ol>
ログイン後にコピー

この効果的だが理解できないコードは、一部のプログラマー (私) を頭痛の種にするか、正規表現の使用を諦めさせるのに十分です。このチュートリアルを読むと、このコードの意味が理解できるようになると思います。

PHP正規表現マッチングの基本的なパターンマッチング

すべては最も基本的なことから始まります。パターンは正規表現の最も基本的な要素であり、文字列の特性を記述する文字のセットです。パターンは、通常の文字列で構成される単純な場合もあれば、文字範囲、繰り返し、コンテキストを表すために特殊文字を使用する非常に複雑な場合もあります。例:

^once

このパターンには特殊文字 ^ が含まれており、このパターンは、once で始まる文字列のみと一致することを意味します。たとえば、このパターンは文字列「onceUponatime」には一致しますが、「There Once was a man from NewYork」には一致しません。 ^ 記号が先頭を示すのと同様に、$ 記号は特定のパターンで終わる文字列と一致します。

bucket$

このパターンは、「誰がこの現金をすべてバケットに保管したか」には一致しますが、「バケット」には一致しません。文字 ^ と $ を一緒に使用すると、完全一致を表します (文字列はパターンと同じです)。例:

^bucket$

は文字列「bucket」のみに一致します。パターンに ^ と $ が含まれていない場合は、そのパターンを含む任意の文字列と一致します。たとえば、パターン

once

は文字列

<ol class="dp-c">
<li class="alt"><span><span>There once was a man from NewYork  </span></span></li>
<li><span>Who kept all of his cash in a bucket. </span></li>
</ol>
ログイン後にコピー

と一致します。

このパターンの文字 (o-n-c-e) はリテラル文字、つまり文字自体を表しており、数字についても同様です。句読点や白文字 (スペース、タブなど) など、その他の少し複雑な文字にはエスケープ シーケンスが必要です。すべてのエスケープ シーケンスはバックスラッシュ () で始まります。タブ文字のエスケープ シーケンスは次のとおりです。したがって、文字列がタブ文字で始まるかどうかを検出したい場合は、次のパターンを使用できます:

^t

同様に、「改行」を表すには n を使用し、復帰を表すには r を使用します。他の特殊記号は、バックスラッシュ自体を . で表し、ピリオドを . で表すなど、前にバックスラッシュを付けて使用できます。

これで PHP 正規表現マッチングの紹介は終わりました。PHP 正規表現マッチングを理解して学習するのに役立つことを願っています。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446580.html技術記事 PHP 正規表現マッチングの実装の簡単な分析 PHP 正規表現マッチングは、PHP で正規表現を適用する最終的な目標です。具体的には…
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

CakePHP の日付と時刻

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

CakePHP ファイルのアップロード

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

CakePHP ルーティング

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP について話し合う

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

CakePHP プロジェクトの構成

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP クイックガイド

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

CakePHP バリデータの作成

See all articles