Sdílet prostřednictvím


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

Vlastnost Hodnota
ID pravidla RE0001
Název Neplatný vzor regulárního výrazu
Kategorie Styl
Podkategorie
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 Možností>nástroje>v textovém editoru>C# | Visual Basic>Advanced. V části Regulární výrazy jsou k dispozici následující možnosti:

Vlastnost 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čení 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

Pokud chcete pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost v none 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.