예제 #1
0
        private static bool TryParseSimpleEscapeSequence(RevgexStringReader inp, out char c)
        {
            inp.Read(); // '\'
            switch (inp.Peek())
            {
            case 'n':
                inp.Read();
                c = '\n';
                return(true);

            case 't':
                inp.Read();
                c = '\t';
                return(true);

            default:
                if (inp.Peek() > 0 && "\\[](){}+*?$. \n\t".Contains((char)inp.Peek()))
                {
                    c = inp.Read();
                    return(true);
                }
                inp.Unread();     // '\'
                c = '\0';
                return(false);
            }
        }