JetBrains Rider 2026.1 Help

正規表現の支援

JetBrains Rider は、.NET 正規表現を扱うための豊富なツールセットを提供します。 既存の式をすばやく分析し、エラーを見つけて修正できます。 新しい式を入力する際、JetBrains Rider は自動補完と検証をサポートします。

文字列リテラルの正規表現

デフォルトでは、JetBrains Rider は pattern パラメーターで、 Regex クラスのメソッド内の正規表現のみを処理します。 ただし、正規表現を含む文字列は、文字列定数、フィールド、他のメソッドの引数など、さまざまな場所で定義できます。 JetBrains Rider で文字列を正規表現として処理したい場合、3 種類のオプションがあります:

  • コンテキストアクションを使用する: Alt+Enter を押しながら、キャレットが文字列内にあり、 NET 正規表現としてマークする を選択します。

    JetBrains Rider は、文字列に対応するシンボル範囲を正規表現としてマークし、その範囲を内部データベースに保存し、含まれるファイルの変更も追跡します。 この方法は非常に迅速かつ簡単ですが、VCS マージなどの外部ファイルの変更後に範囲が失われる可能性があり、この方法でマークされたインジェクションはローカルでのみ追跡されます。

    後で正規表現として文字列の処理を無効にする場合は、 .NET の正規表現マークを削除する コンテキストアクションを使用できます。

  • 別の方法は、 JetBrains.Annotations[RegexPatternAttribute] を使用して、独自のメソッド、パブリックフィールド、プロパティのパラメーターに正規表現としてアノテーションを付けることです。

    プロジェクトが .NET 7 以降をターゲットにしている場合は、対応するコンストラクター [StringSyntax(StringSyntaxAttribute.Regex)][StringSyntaxAttribute] を使用することもできます。

    JetBrains Rider は、メソッド呼び出しや代入の対応する引数を正規表現として処理します:

    引数の正規表現をハイライトする
  • 3 番目の方法は、文字列リテラルの前のコメント /*language=regexp|jsregexp*/ です。 これらのコメントは入力が必要で、コードを汚してしまうかもしれませんが、反面、コードを読む人すべてにインテンションを明確に示し、消失することもなく、JetBrains Rider でそのコードを開く誰もがマークされた文字列で同じ機能を利用できます。 ちなみに、コメントのフォーマットは IntelliJ Platform ベースの IDEと互換性があります。

    コメント付き C# 文字列の正規表現インジェクション

構文ハイライト

JetBrains Rider は正規表現の構文構造、エラー、冗長性もハイライトします:

正規表現のハイライト

ハイライトの色は、次の意味を持ちます。

  • ライトブルー - 文字クラス、アンカー、数量子

  • ライトグリーン - グループ化構成要素

  • オレンジ色の構成要素

  • ピンクとライトピンク - エスケープシーケンス

  • グリーン - コメント

  • 赤い波線の下線付き - エラー

  • 青い波の下線 - 警告

キャレットを区切り文字の 1 つに設定すると、グループ、グループ名、セット内の一致する括弧がハイライトされます。

デフォルトで、JetBrains Rider はすべての非逐語文字列における正しいエスケープシーケンスと誤ったエスケープシーケンスをハイライトします:

文字列中のエスケープシーケンスのハイライト

エラーを直す

正規表現のエラーを修正するには、赤でハイライトされている位置にキャレットを置き、 Alt+Enter を押して、対応する クイックフィックスを選択します。

正規表現エラーの最も一般的な例は、エスケープ文字の誤用です。

正規表現エラー

JetBrains Rider は自動的にエラーを修正するのをサポートします:

JetBrains Rider での正規表現エラーの修正

IntelliSense(インテリセンス)

JetBrains Rider は、ほぼすべての .NET 正規表現構成で IntelliSense をサポートします。 補完リストでは、各構成要素が簡単な説明と共に示されています。

正規表現のコード補完

正規表現では、次のタイプの IntelliSense を使用できます。

  • 自動補完 - \([ 文字の後にトリガーされます

  • 基本補完 Ctrl+Space – 現在のスコープで使用可能な要素を表示します

  • 型一致補完 Ctrl+Shift+Space – 現在のスコープで最も可能性の高い要素を表示します

また、 Match.Groups プロパティ を使用する際も JetBrains Rider の Intellisense の恩恵を受けられます。 JetBrains Rider は、式中のグループ名を検出し、補完リストで提案します:

グループ名の完成

プリコンパイルされた正規表現を抽出する

正規表現 クラスの静的メソッドで使用される正規表現を再利用する必要がある場合は、その正規表現をコンパイル済みの正規表現に抽出できます。

正規表現を抽出するには、メソッド呼び出し内の任意の場所にキャレットを置き、 Alt+Enter を押して、 プリコンパイル済み正規表現へ コンテキストアクションを選択します。

例: IsMatch メソッドの pattern パラメーターから正規表現を抽出することができます。

public void Bar() { var result = Regex.IsMatch("Input", "Pattern"); }

コンテキストアクションを適用した後、パターンは静的フィールドに抽出されます。

private static readonly Regex Regex1 = new Regex("Pattern"); public void Bar() { var result = Regex1.IsMatch("Input"); }
2026 年 6 月 12 日