Sdílet prostřednictvím


Neplatný vzor regulárního výrazu (RE0001)

Vlastnictví Hodnota
Identifikátor pravidla RE0001
Název Neplatný vzor regulárního výrazu
Kategorie Styl
Podkategorie není k dispozici
Příslušné jazyky C#, Visual Basic
Možnosti Viz část Možnosti .

Přehled

Toto pravidlo označí místa, kde literálový řetězec obsahující regulární výraz neodpovídá požadované syntaxi. Pravidlo se vztahuje na identifikovaný regulární výraz, který je určen zahrnutím vloženého komentáře nebo komentáře před řetězcem regulárního výrazu, například //lang=regex nebo //lang=regex,strict. Druhý komentář používá pro interpretaci regulárních výrazů striktní režim.

Toto pravidlo je pouze integrované vývojové prostředí (IDE) a neplatí pro scénáře příkazového řádku.

Možnosti

Možnosti určují chování, které má pravidlo vynutit.

Pro kód rozpoznaný jako regulární výraz nastavíte možnosti v sadě Visual Studio tak, že vyberete Editor>> nástroje > | > Advanced. V části Regulární výrazy jsou k dispozici následující možnosti:

Vlastnictví Popis
Obarvení regulárních výrazů Určuje, zda se mají obarvit regulární výrazy.
Hlášení neplatných regulárních výrazů Určuje, jestli se mají hlásit neplatné regulární výrazy.
Zvýraznění souvisejících komponent pod kurzorem Určuje, jestli rychlé akce
používají zvýraznění.
Zobrazit seznam dokončení Určuje, jestli se má zobrazit dokončování kódu IntelliSense.

Příklad

Následující fragment kódu ukazuje příklad s neplatným regulárním výrazem.

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

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

Potlačte upozornění

Pokud chcete potlačit pouze jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, abyste pravidlo zakázali a znovu povolili.

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

Chcete-li pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost na none v konfiguračním souboru .

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

Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.