private void PruneUnlikelyElemments(IElement targetElem) { foreach (var elem in targetElem.GetElementsByTagName("*")) { if (UnlikelyCandidates.IsMatch(elem.TagName) && !MaybeCandidates.IsMatch(elem.TagName)) { elem.Parent?.RemoveChild(elem); } } }
private bool IsPositiveOrMaybeCandidate(IElement p) => (MaybeCandidates.IsMatch(p.NodeName) || PositiveCandidates.IsMatch(p.NodeName));