<br> Start by replacing the double escape by a simple escape... after that, drools simply makes a call to String.matches() method... so, if you make it work in java, it will work in drools...<br> E.g.:<br><br>"^(([\+]?\d{1,3}(-|......"<br>
<br> []s<br> Edson<br><br><div class="gmail_quote">2008/6/2 Nagaraju runkana <<a href="mailto:runkana.nagaraju@gmail.com">runkana.nagaraju@gmail.com</a>>:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div> Hi ,</div>
<div>i am trying validate complex expression for phone numberl?</div>
<div> </div>
<div>rule "test2"<br> when<br> $m : Message(email:email,phone:phone)<br> Message(phone matches "^(([\\+]?\\d{1,3}(-|\\.)?\\(?\\w\\)?(-|\\.)?\\d{1,3})|(<a>\\(?\\d{2,3}\\)?))(-|\\.)?(\\d{3,4})(-|\\.)?(\\d{4</a>})(( x| ext)\\d{1,5}){0,1}$"</div>
<div>then<br> System.out.println("Invalid phone number: " + phone );<br>end "</div>
<div> </div>
<div> </div>
<div>in this case some error should be comming.pls find out whethere the expression is correct or not.</div>
<div> </div>
<div>java.util.regex.PatternSyntaxException: Unknown inline modifier near index 21<br>^(([+]?d{1,3}(-|.)?(?w)?(-|.)?d{1,3})|((?d{2,3})?))(-|.)?(d{3,4})(-|.)?(d{4})(( x| ext)d{1,5}){0,1}$<br> ^<br> at java.util.regex.Pattern.error(Pattern.java:1713)<br>
at java.util.regex.Pattern.group0(Pattern.java:2519)<br> at java.util.regex.Pattern.sequence(Pattern.java:1806)<br> at java.util.regex.Pattern.expr(Pattern.java:1752)<br> at java.util.regex.Pattern.group0(Pattern.java:2530)<br>
at java.util.regex.Pattern.sequence(Pattern.java:1806)<br> at java.util.regex.Pattern.expr(Pattern.java:1752)<br> at java.util.regex.Pattern.group0(Pattern.java:2530)<br> at java.util.regex.Pattern.sequence(Pattern.java:1806)<br>
at java.util.regex.Pattern.expr(Pattern.java:1752)<br> at java.util.regex.Pattern.compile(Pattern.java:1460)<br> at java.util.regex.Pattern.<init>(Pattern.java:1133)<br> at java.util.regex.Pattern.compile(Pattern.java:823)<br>
at java.util.regex.Pattern.matches(Pattern.java:928)<br> at java.lang.String.matches(String.java:2091)<br> at org.drools.base.evaluators.StringFactory$StringMatchesEvaluator.evaluate(StringFactory.java:211)<br> at org.drools.rule.LiteralRestriction.isAllowed(LiteralRestriction.java:61)<br>
at org.drools.rule.LiteralConstraint.isAllowed(LiteralConstraint.java:82)<br> at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:132)<br> at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:318)<br>
at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:153)<br> at org.drools.reteoo.Rete.assertObject(Rete.java:175)<br> at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)<br> at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)<br>
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:909)<br> at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:881)<br> at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:682)<br>
at com.sample.DroolsTest.main(DroolsTest.java:40)</div>
<div> </div>
<div> </div>
<div>regards,</div>
<div>Chanti</div>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br> Edson Tirelli<br> JBoss Drools Core Development<br> Office: +55 11 3529-6000<br> Mobile: +55 11 9287-5646<br> JBoss, a division of Red Hat @ <a href="http://www.jboss.com">www.jboss.com</a>