protected internal override Value RecursiveCollectUnresolvedVariables(IEvalContext ctx) { SubExpressions[0].RecursiveCollectUnresolvedVariables(ctx); SubExpressions[1].RecursiveCollectUnresolvedVariables(ctx); Match m = m_Regex.Match(""); m_LocalContext = new RegexMatchLocalContext(m_Regex.GetGroupNumbers(), m_Regex.GetGroupNames(), m.Groups); return(new BoolValue(!m_InvertResultValue)); }
public override Value Evaluate(IEvalContext ctx) { Match match = m_Regex.Match(SubExpressions[0].Evaluate(ctx).ToString()); if (!match.Success) { m_LocalContext = null; return(new BoolValue(m_InvertResultValue)); } m_LocalContext = new RegexMatchLocalContext(m_Regex.GetGroupNumbers(), m_Regex.GetGroupNames(), match.Groups); return(new BoolValue(!m_InvertResultValue)); }