StorytellerDocGen.Transformation.Token.Find C# (CSharp) Method

Find() public static method

public static Find ( string text, int position ) : Token
text string
position int
return Token
        public static Token Find(string text, int position)
        {
            var i1 = text.IndexOf(Start, position);
            if (i1 < 0) return null;

            var i2 = text.IndexOf(End, i1);
            if (i2 < 0) throw new Exception("Mismatched <[***]> delimiters starting at position " + i1);

            var raw = text.Substring(i1 + 2, i2 - i1 - 2);
            var parts = raw.Split(':');

            return new Token
            {
                Data = parts.Length > 1 ? parts.Skip(1).Join(":").Trim() : null,
                FirstIndex = i1,
                LastIndex = i2 + 1,
                Key = parts.First()
            };
        }
    }