public List <string> Scrape(ScrapeLogic scrapeLogic) { List <string> scraped = new List <string>(); MatchCollection matches = Regex.Matches(scrapeLogic.Data, scrapeLogic.Regex, scrapeLogic.RegexOption); foreach (Match match in matches) { if (!scrapeLogic.Parts.Any()) { scraped.Add(match.Groups[0].Value); } else { foreach (var part in scrapeLogic.Parts) { Match matchedPart = Regex.Match(match.Groups[0].Value, part.Regex, part.RegexOption); if (matchedPart.Success) { scraped.Add(matchedPart.Groups[1].Value); } } } } return(scraped); }
public ScrapeLogic Build() { ScrapeLogic scrapeLogic = new ScrapeLogic(); scrapeLogic.Data = _data; scrapeLogic.Regex = _regex; scrapeLogic.RegexOption = _regexOption; scrapeLogic.Parts = _parts; return(scrapeLogic); }