public static ExtractBase ParserBase(string expression) { expression = expression.Trim(); var lines = expression.Split(new string[] { "\n" }, StringSplitOptions.RemoveEmptyEntries); var eb = new ExtractBase(); foreach (var line in lines) { if (line.Trim().StartsWith("#")) { eb.Name = line.Trim().TrimStart('#'); } else { var s = ParserSelector(line.Trim()); if (s != null) { eb.Selectors.Add(s); } } } return(eb); }
public static ExtractResultCollection ExtractSelector(string content, ExtractBase extractBase) { var pr = ProcessorFactory.Process(content, extractBase.Selectors); var results = new ExtractResultCollection(); foreach (var m in pr.Matches) { var result = new ExtractResult { Name = "tile", Content = m }; results.Add(result); } return(results); }