ilcclib.Tokenizer.CTokenizer.ReadUntilSequence C# (CSharp) Метод

ReadUntilSequence() публичный Метод

public ReadUntilSequence ( string Sequence ) : string
Sequence string
Результат string
        public string ReadUntilSequence(string Sequence)
        {
            int Position = Text.IndexOf(Sequence, CurrentPos);
            int NextPos = 0;
            if (Position < 0)
            {
                NextPos = Text.Length;
            }
            else
            {
                NextPos = Position + Sequence.Length;
            }

            try
            {
                return Text.Substring(CurrentPos, NextPos - CurrentPos);
            }
            finally
            {
                CurrentPos = NextPos;
            }
        }

Usage Example

Пример #1
0
 public static string RemoveComments(string Input)
 {
     var CTokenizer = new CTokenizer(Input, TokenizeSpaces: true);
     var Tokens = CTokenizer.Tokenize().GetEnumerator();
     string Output = "";
     while (Tokens.MoveNext())
     {
         switch (Tokens.Current.Raw)
         {
             case "//":
                 Output += new String(' ', CTokenizer.SkipUntilSequence("\n") - 1) + "\n";
                 break;
             case "/*":
                 Output += ReplaceNonSpaceWithSpaces(CTokenizer.ReadUntilSequence("*/"));
                 break;
             default:
                 Output += Tokens.Current.Raw;
                 break;
         }
     }
     return Output;
 }