Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ AddCategoryFromName()

void System.Text.RegularExpressions.RegexCharClass.AddCategoryFromName ( string categoryName,
bool invert,
bool caseInsensitive,
string pattern,
int currentPos )
inline

Definition at line 415 of file RegexCharClass.cs.

416 {
417 if (s_definedCategories.TryGetValue(categoryName, out var value) && !categoryName.Equals("__InternalRegexIgnoreCase__"))
418 {
419 if (caseInsensitive && (categoryName.Equals("Ll") || categoryName.Equals("Lu") || categoryName.Equals("Lt")))
420 {
421 value = s_definedCategories["__InternalRegexIgnoreCase__"];
422 }
423 StringBuilder stringBuilder = EnsureCategories();
424 if (invert)
425 {
426 for (int i = 0; i < value.Length; i++)
427 {
428 short num = (short)value[i];
429 stringBuilder.Append((char)(-num));
430 }
431 }
432 else
433 {
434 stringBuilder.Append(value);
435 }
436 }
437 else
438 {
440 }
441 }
static readonly Dictionary< string, string > s_definedCategories
static ReadOnlySpan< char > SetFromProperty(string capname, bool invert, string pattern, int currentPos)

References System.Text.RegularExpressions.RegexCharClass.AddSet(), System.Text.RegularExpressions.RegexCharClass.EnsureCategories(), System.Text.RegularExpressions.i, System.Text.RegularExpressions.pattern, System.Text.RegularExpressions.RegexCharClass.s_definedCategories, System.Text.RegularExpressions.RegexCharClass.SetFromProperty(), and System.Text.RegularExpressions.value.

Referenced by System.Text.RegularExpressions.RegexCharClass.AddDigit().