正規表現でのC#グループ化構造の説明
正規表現を定義できる文字、演算子、および構成にはさまざまなカテゴリがあります。
それらの1つは、グループ化構造です。グループ化構造は、正規表現の部分式を記述し、入力文字列の部分文字列をキャプチャします。次の表に、グループ化の構成を示します。
(部分式) | 一致した部分式をキャプチャし、それにゼロベースの序数を割り当てます。 | (\ w)\ 1 | 「eeep」の「ee」 |
(? | 一致した部分式を名前付きグループにキャプチャします。 | (? | 「eeep」の「ee」 |
(? | バランシンググループの定義を定義します。 | (((?'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」 |
-
JavaScriptの正規表現修飾子を例を挙げて説明する
JavaScript正規表現修飾子は正規表現のオプション部分であり、大文字と小文字を区別しないグローバル検索を実行できます。修飾子を組み合わせることもできます。 以下は修飾子です- 修飾子 説明 g グローバルマッチングを有効にし、最初の一致で停止するのではなく、一致したすべての結果を返します i 大文字と小文字を区別しないマッチングを可能にします m 複数行のマッチングを可能にします 例 以下は、JavaScriptのswitchステートメントで厳密に比較するためのコードです- <!DOCTYPE html> <html la
-
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