C#
 Computer >> コンピューター >  >> プログラミング >> C#

正規表現でのC#グループ化構造の説明


正規表現を定義できる文字、演算子、および構成にはさまざまなカテゴリがあります。

それらの1つは、グループ化構造です。グループ化構造は、正規表現の部分式を記述し、入力文字列の部分文字列をキャプチャします。次の表に、グループ化の構成を示します。

グループ化構成 説明 パターン 一致
(部分式) 一致した部分式をキャプチャし、それにゼロベースの序数を割り当てます。 (\ w)\ 1 「eeep」の「ee」
(? subexpression) 一致した部分式を名前付きグループにキャプチャします。 (? \ w)\ k 「eeep」の「ee」
(? subexpression) バランシンググループの定義を定義します。 (((?'Open' \()[^ \(\)] *)+((?'Close-Open' \))[^ \(\)] *)+)*(?(Open )(?!))$ "((1-3)*(3-1))" in "3 + 2 ^((1-3)*(3-1))"
(?:部分式) 非キャプチャグループを定義します。 Write(?:Line)? 「Console.WriteLine()」の「WriteLine」
(?imnsx-imnsx:subexpression) subexpression内の指定されたオプションを適用または無効にします A \ d {2}(?i:\ w +)\ b 「A12xlA12XLa12xl」の「A12xl」、「A12XL」
(?=部分式) ゼロ幅のポジティブ先読みアサーション。 \ w +(?=\。) 「彼は」の「is」、「ran」、「out」。犬は走った。太陽は出ている。
(?!部分式) ゼロ幅の負の先読みアサーション。 \ b(?! un)\ w + \ b 「sure」、「used」の「unsureunityused」
(?<=subexpression) ゼロ幅のポジティブルックビハインドアサーション。 (?<=19)\ d {2} \ b "51"、 "03" in "1851 1999 1950 1905 2003"
(?<!部分式) ゼロ幅のネガティブルックビハインドアサーション。 (?<!19)\ d {2} \ b "ends"、 "ender" in "end sends endure lender"
(?>部分式) 非バックトラッキング(または「貪欲」)部分式。 [13579](?> A + B +) 「1ABB3ABBC5AB5AC」の「1ABB」、「3ABB」、「5AB」

  1. JavaScriptの正規表現修飾子を例を挙げて説明する

    JavaScript正規表現修飾子は正規表現のオプション部分であり、大文字と小文字を区別しないグローバル検索を実行できます。修飾子を組み合わせることもできます。 以下は修飾子です- 修飾子 説明 g グローバルマッチングを有効にし、最初の一致で停止するのではなく、一致したすべての結果を返します i 大文字と小文字を区別しないマッチングを可能にします m 複数行のマッチングを可能にします 例 以下は、JavaScriptのswitchステートメントで厳密に比較するためのコードです- <!DOCTYPE html> <html la

  2. JavaScriptのグループ化演算子について説明します。

    グループ化演算子は、式の評価の優先順位を管理するために使用されます。 以下は、JavaScriptのグループ化演算子のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document&l