public override string ToRegexPattern()
{
string characterSetPattern;
if (UseCharacterCodes)
{
StringBuilder patternBuilder = new StringBuilder();
foreach (char c in characters)
{
patternBuilder.AppendFormat(CultureInfo.InvariantCulture, "\\u{0:x4}", (int)c);
}
characterSetPattern = patternBuilder.ToString();
}
else
{
characterSetPattern = characterListExpression;
}
string result = string.Format(CultureInfo.InvariantCulture, (IsNegative ? "[^{0}]" : "[{0}]"), characterSetPattern);
if (HasQuantifier)
{
result += Quantifier.ToRegexPattern();
}
return result;
}