Example #1
0
        public static string[] SplitText
        (
            [CanBeNull] string text
        )
        {
            if (string.IsNullOrEmpty(text))
            {
                return(new string[0]);
            }

            List <string> result    = new List <string>();
            TextNavigator navigator = new TextNavigator(text);

            while (!navigator.IsEOF)
            {
                navigator.SkipWhitespace();
                if (navigator.IsEOF)
                {
                    break;
                }

                char   c = navigator.ReadChar();
                string item;
                if (c == CommandLineSettings.ArgumentDelimiter)
                {
                    item = c + navigator.ReadTo
                           (
                        CommandLineSettings.ArgumentDelimiter
                           );
                }
                else
                {
                    item = c + navigator.ReadUntilWhiteSpace();
                }
                result.Add(item);
            }

            return(result.ToArray());
        }