diff --git a/src/Workspaces/Core/Portable/EmbeddedLanguages/RegularExpressions/RegexParser.cs b/src/Workspaces/Core/Portable/EmbeddedLanguages/RegularExpressions/RegexParser.cs index aab0d02f27fd2c35f01b097cb2f94d899624bc2e..735b9fd0e179c6975e7deec566de803c3ff9c6e8 100644 --- a/src/Workspaces/Core/Portable/EmbeddedLanguages/RegularExpressions/RegexParser.cs +++ b/src/Workspaces/Core/Portable/EmbeddedLanguages/RegularExpressions/RegexParser.cs @@ -1424,7 +1424,11 @@ private RegexPrimaryExpressionNode ParseSingleCharacterClassComponent(bool isFir return ParseEscape(backslashToken, allowTriviaAfterEnd: false); case '-': - // trivia is not allowed anywhere in a character class + // trivia is not allowed anywhere in a character class. + + // We just let the basic consumption code pull out a token for us, we then + // convert that to text since we treat all characters after the - as text no + // matter what. return new RegexSimpleEscapeNode( backslashToken, ConsumeCurrentToken(allowTrivia: false).With(kind: RegexKind.TextToken));