Exemple #1
0
        /// <summary>
        /// Создание контента
        /// </summary>
        /// <param name="text">текст</param>
        /// <param name="mode">режим выделения дочерних контентов</param>
        /// <returns>контент</returns>
        private Content CreateContent(string text, ChildContentSelectorMode mode)
        {
            var content  = text;
            var children = _selector.Select(ref content, mode);

            var result = new Content(content);

            result.Children = children;
            return(result);
        }
        /// <summary>
        /// Выделение дочерние контенты из заданного текста
        /// </summary>
        /// <param name="text">текст</param>
        /// <param name="mode">режим выделения дочерних контентов</param>
        /// <returns>дочерние контенты</returns>
        public List <ChildContent> Select(ref string text, ChildContentSelectorMode mode)
        {
            InitializeSelectorCollections();
            _selectors = _selectorsDictionary[mode];

            for (int i = 0; i < _selectors.Length; ++i)
            {
                _currentSelectorIndex = i;
                _selectors[i].Select(ref text, this);
            }

            return(_selectedContents);
        }
Exemple #3
0
 /// <summary>
 /// Конструктор
 /// </summary>
 /// <param name="text">текст</param>
 /// <param name="baseDate">дата для выделения относительных дат</param>
 /// <param name="mode">режим выделения дочерних контентов</param>
 public TextContent(string text, string baseDate, ChildContentSelectorMode mode = ChildContentSelectorMode.All)
 {
     BaseDate      = baseDate;
     ParentContent = CreateContent(text, mode);
 }