ホームページ > ウェブフロントエンド > jsチュートリアル > 規則性の 3 つのモード (貪欲、消極的、独占的) の詳細な説明

規則性の 3 つのモード (貪欲、消極的、独占的) の詳細な説明

php中世界最好的语言
リリース: 2018-03-30 11:26:39
オリジナル
2488 人が閲覧しました

今回は、規則性の3つのモード(貪欲、消極的、独占欲)について詳しく説明します 規則性の3つのモード(貪欲、消極的、独占欲)を使用するときの注意点は次のとおりです。戦闘の場合を見てみましょう。

貪欲さ: 最大一致

X?、X*、X+、X{n,} が最大一致です。たとえば、「<.+>」を使用して「aaava abb」と一致させる場合、おそらく期待される結果は「」と一致します。結果は「aava 」に一致します。

Greediness モードでは、コンテンツ全体が一致するまで、可能な限り広い範囲で一致しようとします。このとき、マッチングは成功できません。マッチングが成功するまで、小さなマッチング範囲に戻り始めます

String test = "a<tr>aava </tr>abb ";
String reg = "<.+>";
System.out.println(test.replaceAll(reg, "###"));
ログイン後にコピー

出力: a###abb

消極的 (怠惰) (消極的): 最小マッチング
X??, , m}?出力: a###aava ###abb

Greediness とは異なり、Reluctant モードではコンテンツが 2 回一致します

Possessive (所有的): 完全一致

X?+, X*+, X++, X{n,} + は完全一致

Possessive モードは、Greediness モードの後に​​ + を追加します。つまり、コンテンツの最後まで最大範囲の一致を試みますが、Greediness とは異なります。完全に一致します。マッチングはもうフォールバックせず、より狭い範囲でのマッチングを試みます。

String test = "a<tr>aava </tr>abb ";
String reg = "<.+?>";
System.out.println(test.replaceAll(reg, "###"));
ログイン後にコピー

出力: aaava abb

この記事のケースを読んだ後は、この方法を習得したと思います。さらに興味深い情報については、他の php 中国語 Web サイトに注目してください。

推奨読書:

Linux での正規表現の使用の詳細な説明

以上が規則性の 3 つのモード (貪欲、消極的、独占的) の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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