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

◆ ScanBackslash()

RegexNode System.Text.RegularExpressions.RegexParser.ScanBackslash ( bool scanOnly)
inlineprivate

Definition at line 946 of file RegexParser.cs.

947 {
948 char c;
949 switch (c = RightChar())
950 {
951 case 'A':
952 case 'B':
953 case 'G':
954 case 'Z':
955 case 'b':
956 case 'z':
957 MoveRight();
958 if (!scanOnly)
959 {
960 return new RegexNode(TypeFromCode(c), _options);
961 }
962 return null;
963 case 'w':
964 MoveRight();
965 if (!scanOnly)
966 {
967 return new RegexNode(11, _options, UseOptionE() ? "\0\n\00:A[_`a{İı" : "\0\0\n\0\u0002\u0004\u0005\u0003\u0001\u0006\t\u0013\0");
968 }
969 return null;
970 case 'W':
971 MoveRight();
972 if (!scanOnly)
973 {
974 return new RegexNode(11, _options, UseOptionE() ? "\u0001\n\00:A[_`a{İı" : "\u0001\0\n\0\u0002\u0004\u0005\u0003\u0001\u0006\t\u0013\0");
975 }
976 return null;
977 case 's':
978 MoveRight();
979 if (!scanOnly)
980 {
981 return new RegexNode(11, _options, UseOptionE() ? "\0\u0004\0\t\u000e !" : "\0\0\u0001d");
982 }
983 return null;
984 case 'S':
985 MoveRight();
986 if (!scanOnly)
987 {
988 return new RegexNode(11, _options, UseOptionE() ? "\u0001\u0004\0\t\u000e !" : "\u0001\0\u0001d");
989 }
990 return null;
991 case 'd':
992 MoveRight();
993 if (!scanOnly)
994 {
995 return new RegexNode(11, _options, UseOptionE() ? "\0\u0002\00:" : "\0\0\u0001\t");
996 }
997 return null;
998 case 'D':
999 MoveRight();
1000 if (!scanOnly)
1001 {
1002 return new RegexNode(11, _options, UseOptionE() ? "\u0001\u0002\00:" : "\0\0\u0001\ufff7");
1003 }
1004 return null;
1005 case 'P':
1006 case 'p':
1007 {
1008 MoveRight();
1009 if (scanOnly)
1010 {
1011 return null;
1012 }
1013 RegexCharClass regexCharClass = new RegexCharClass();
1014 regexCharClass.AddCategoryFromName(ParseProperty(), c != 'p', UseOptionI(), _pattern, _currentPos);
1015 if (UseOptionI())
1016 {
1017 regexCharClass.AddLowercase(_culture);
1018 }
1019 return new RegexNode(11, _options, regexCharClass.ToStringClass());
1020 }
1021 default:
1023 }
1024 }
RegexNode ScanBasicBackslash(bool scanOnly)

References System.Text.RegularExpressions.RegexParser._culture, System.Text.RegularExpressions.RegexParser._currentPos, System.Text.RegularExpressions.RegexParser._options, System.Text.RegularExpressions.RegexParser._pattern, System.Text.RegularExpressions.RegexParser.MoveRight(), System.Text.RegularExpressions.RegexParser.ParseProperty(), System.Text.RegularExpressions.RegexParser.RightChar(), System.Text.RegularExpressions.RegexParser.ScanBasicBackslash(), System.Text.RegularExpressions.RegexParser.TypeFromCode(), System.Text.RegularExpressions.RegexParser.UseOptionE(), and System.Text.RegularExpressions.RegexParser.UseOptionI().

Referenced by System.Text.RegularExpressions.RegexParser.CountCaptures(), and System.Text.RegularExpressions.RegexParser.ScanRegex().