正規表現パターンが無効です (RE0001)

プロパティ
ルール ID RE0001
Title 正規表現パターンが無効です
カテゴリ スタイル
Subcategory 該当なし
該当言語 C#、Visual Basic
[オプション] 「オプション」セクションを参照してください

概要

この規則は、正規表現を含むリテラル文字列が必要な構文に準拠していない場所にフラグを設定します。 ルールは、特定された正規表現に適用されます。これは、正規表現文字列の前に in行コメント またはコメントが含まれることによって決まります。たとえば//lang=regex//lang=regex,strict、 後者のコメントでは、正規表現の解釈に strict モードを使用します。

この規則は IDE 専用であり、コマンド ライン シナリオには適用されません。

[オプション]

オプションでは、規則を適用する動作を指定します。

正規表現として認識されるコードの場合は、ツール>オプション テキスト エディター>C# | Visual Basic>Advanced を選択して Visual Studio でオプション>を設定します。 [正規表現] セクションでは、次の オプションを 使用できます。

プロパティ 説明
正規表現を色分けする 正規表現を色分けするかどうかを指定します。
無効な正規表現を報告する 無効な正規表現を報告するかどうかを指定します。
カーソルの下の関連コンポーネントを強調表示する クイック アクションで強調表示を使用するかどうかを 指定します
完了リストを表示する IntelliSense コード補完を表示するかどうかを指定します。

次のコード スニペットは、正規表現が無効な例を示しています。

// Code with violations
// lang=regex
string pattern = @"\b[M]\w+\";

// Fixed code
// lang=regex
string pattern = @"\b[M]\w+";

警告を抑制する

単一の違反だけを抑制する場合は、ソース ファイルにプリプロセッサ ディレクティブを追加して無効にしてから、規則を再度有効にします。

#pragma warning disable RE0001
// The code that's violating the rule is on this line.
#pragma warning restore RE0001

ファイル、フォルダー、またはプロジェクトの規則を無効にするには、構成ファイルでその重要度を none に設定します。

[*.{cs,vb}]
dotnet_diagnostic.RE0001.severity = none

詳細については、「コード分析の警告を抑制する方法」を参照してください。