Freigeben über


Ungültiges regex-Muster (RE0001)

Eigentum Wert
Regel-ID RE0001
Titel Ungültiges regex-Muster
Kategorie Stil
Unterkategorie Nicht verfügbar
Anwendbare Sprachen C#, Visual Basic
Optionen Siehe Abschnitt "Optionen ".

Überblick

Diese Regel kennzeichnet Orte, an denen eine Literalzeichenfolge, die einen regulären Ausdruck enthält, nicht der erforderlichen Syntax entspricht. Die Regel gilt für einen identifizierten regulären Ausdruck, der durch die Einbeziehung eines Inlinekommentars oder Kommentars vor der regex-Zeichenfolge bestimmt wird, z //lang=regex . B. oder //lang=regex,strict. Letzterer Kommentar verwendet den strikten Modus für die Regex-Interpretation.

Diese Regel ist nur IDE und gilt nicht für Befehlszeilenszenarien.

Optionen

Optionen geben das Verhalten an, das die Regel erzwingen soll.

Für code, der als regex erkannt wird, legen Sie die Optionen in Visual Studio fest, indem Sie "Extras>Optionen>Text Editor>C# | Visual Basic>Advanced" auswählen. Die folgenden Optionen stehen im Abschnitt " Reguläre Ausdrücke" zur Verfügung:

Eigentum BESCHREIBUNG
Färben regulärer Ausdrücke Gibt an, ob reguläre Ausdrücke gefärbt werden sollen.
Melden ungültiger regulärer Ausdrücke Gibt an, ob ungültige reguläre Ausdrücke angezeigt werden sollen.
Hervorheben verwandter Komponenten unter dem Cursor Gibt an , ob Quick Actions
Hervorhebungen verwendet.
Abschlussliste anzeigen Gibt an, ob IntelliSense-Codeabschluss angezeigt werden soll.

Beispiel

Der folgende Codeausschnitt zeigt ein Beispiel mit einem ungültigen regulären Ausdruck.

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

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

Unterdrücken einer Warnung

Wenn Sie nur einen einzelnen Verstoß unterdrücken möchten, fügen Sie Ihrer Quelldatei Präprozessordirektiven hinzu, um die Regel zu deaktivieren und dann erneut zu aktivieren.

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

Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, setzen Sie den Schweregrad im none auf fest.

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

Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.