public override NodeQueryResult EvaluateSingle(NodeQueryDefinition query, NodeQueryEvaluationContext context)
        {
            Log(query);

            Regex           regex  = new Regex(query.query);
            NodeQueryResult output = new NodeQueryResult();

            output.ResultEvaluation = regex.IsMatch(context.documentUrl);

            Log(output);

            return(output);
        }
Beispiel #2
0
        public override NodeQueryResult EvaluateSingle(NodeQueryDefinition query, NodeQueryEvaluationContext context)
        {
            //var p = context.htmlDocument.DocumentNode.XPath;

            Log(query);

            var nodes = context.htmlNodes.SelectNodes(query.query);

            NodeQueryResult output = new NodeQueryResult();

            if (nodes != null)
            {
                output.ResultNodes.AddRange(nodes);
            }

            output.ResultEvaluation = output.ResultNodes.Any();

            Log(output);

            return(output);
        }
Beispiel #3
0
        public override NodeQueryResult EvaluateSingle(NodeQueryDefinition query, NodeQueryEvaluationContext context)
        {
            Log(query);

            var indexList = imbSCI.Core.extensions.text.imbStringCommonTools.rangeStringToIndexList(query.query, context.htmlNodes.Count);

            NodeQueryResult output = new NodeQueryResult();

            foreach (Int32 i in indexList)
            {
                if (i < context.htmlNodes.Count)
                {
                    output.ResultNodes.Add(context.htmlNodes[i]);
                }
            }


            output.ResultEvaluation = output.ResultNodes.Any();

            Log(output);

            return(output);
        }
Beispiel #4
0
 public abstract NodeQueryResult EvaluateSingle(NodeQueryDefinition query, NodeQueryEvaluationContext context);