正規表現 (PCRE) を使用して a^n b^n c^n を照合するにはどうすればよいですか?
Oct 22, 2024 pm 08:36 PM正規表現 (PCRE) を使用した a^n b^n c^n の一致
正規表現エンジンは、正規文法の元の理論を超えて進歩しました、これまで不可能と考えられていたパターンを処理できるようになります。そのようなパターンの 1 つは、文脈依存文法 {a^n b^n c^n; です。 n>0} は、同じ数の a、b、c を含む文字列と一致します。
この複雑なパターンは、次の PCRE 式を使用して一致させることができます。
~^ (?=(a(?-1)?b)c) a+(b(?-1)?c) $~x
ログイン後にコピー
説明:
- ^ アンカーと $ アンカーにより、パターンが文字列全体と一致することが保証されます。
- 肯定先読みアサーション (?=(a(?-1)?b) c) "ab" が出現するたびに、同じ数の c があるかどうかをチェックします。
- a (b(?-1)?c) グループは、任意の数の a をキャプチャし、その後にb と c の数は同じです。
主要な洞察:
- 最新の PCRE では、非規則的なパターンのマッチングが可能です。
- このパターンは、先読みアサーションと再帰的否定の力を示しています。
- 文脈依存文法を解析する正規表現の機能は、正規表現が通常の文法に限定されているという概念に疑問を投げかけます。
一致例:
- aaabbbccc は一致します (1)
- aaabbbcc は一致しません (0)
- aaaccc は一致しません (0)
- aabcc は (0) と一致しません
- abbcc は (0) と一致しません
この正規表現は、PCRE の機能が通常の言語を超えて拡張され、より多くの処理を可能にすることを示しています。複雑なパターン。
以上が正規表現 (PCRE) を使用して a^n b^n c^n を照合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック
Gmailメールのログイン入り口はどこですか?
7282
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1342
46


Laravel チュートリアル
1258
25


PHP チュートリアル
1205
29



LaravelのバックエンドでReactアプリを構築する:パート2、React
