/// <summary> /// Match2s the item. /// </summary> /// <param name="m">M.</param> /// <param name="Item">Item.</param> /// <param name="BaseUrl">Base URL.</param> /// <param name="ItemUrlCaseSensitive">If set to <c>true</c> item URL case sensitive.</param> public static void Match2Item(Match m, ref Article Item, string BaseUrl, bool ItemUrlCaseSensitive = false) { //url Item.Url = new Uri(new Uri(BaseUrl), RegexUtility.TryGetString(m, "Url", Item.Url, false)).AbsoluteUri; //title Item.Title = RegexUtility.TryGetString(m, "Title", Item.Title); //降低Clean级别 if (string.IsNullOrEmpty(Item.Title)) { Item.Title = HTMLCleaner.CleanHTML(Item.Title, true); } //text Item.HtmlContent = RegexUtility.TryGetString(m, "Text", Item.HtmlContent, false); //Author Info Item.Author = RegexUtility.TryGetString(m, "AuthorName", Item.Author); Item.Source = RegexUtility.TryGetString(m, "Source", Item.Source); if (!String.IsNullOrWhiteSpace(Item.Source)) { Item.Source = TextCleaner.FullClean(Item.Source); } //Media Info Item.MediaName = RegexUtility.TryGetString(m, "MediaName", Item.MediaName); //time if (m.Groups["PubDate"].Success) { Item.PubDate = DateTimeParser.Parser(HTMLCleaner.CleanHTML(m.Groups["PubDate"].Value, true)); } if (Item.PubDate <= DateTime.MinValue) { Item.PubDate = DateTime.Now; } Match2ItemCount(m, Item.ViewDataList); }