예제 #1
0
        private string[] ParseKeyedValues(VPPTextParser parser, string key)
        {
            parser.SetPosition(0);
            int defIndex;

            List <string> ret = new();

            while ((defIndex = parser.Seek(key)) != -1)
            {
                parser.Eat(key);
                parser.EatWhiteSpace();

                if (parser.Is('\"'))
                {
                    continue;
                }

                int pstart = parser.Eat('<');
                int end    = parser.EatUntil('>');
                parser.SetPosition(pstart + 1);

                ret.Add(parser.Get(end - pstart - 1));
                parser.Set(pstart, '\"');
                parser.Set(end, '\"');
            }

            return(ret.ToArray());
        }