protected internal override void compile()
        {
            String errMsg = "Error: RegexTopMatcher.Compile(): ";

            String expr = expr_;

            if ('$' != expr[expr.Length - 1])
            {
                expr = expr + "<.*>*";
            }
            else
            {
                expr = expr.Substring(0, (expr.Length - 1) - (0));
            }

            if ('^' != expr[0])
            {
                secondaryMatcher_ = new NdnRegexPatternListMatcher("<.*>*" + expr,
                                                                   secondaryBackrefManager_);
            }
            else
            {
                expr = expr.Substring(1, (expr.Length) - (1));
            }

            primaryMatcher_ = new NdnRegexPatternListMatcher(expr,
                                                             primaryBackrefManager_);
        }
Beispiel #2
0
        protected internal override void compile()
        {
            if (expr_.Length < 2)
            {
                throw new NdnRegexMatcherBase.Error("Unrecognized format: " + expr_);
            }

            int lastIndex = expr_.Length - 1;

            if ('(' == expr_[0] && ')' == expr_[lastIndex])
            {
                NdnRegexMatcherBase matcher = new NdnRegexPatternListMatcher(
                    expr_.Substring(1, (lastIndex) - (1)), backrefManager_);
                ILOG.J2CsMapping.Collections.Collections.Add(matchers_, matcher);
            }
            else
            {
                throw new NdnRegexMatcherBase.Error("Unrecognized format: " + expr_);
            }
        }