regex validator
Description
Validates a string field using a regular expression.
Parameters
fieldName
- The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required.regexp
- The RegExp expressioncaseSensitive
- Boolean (Optional). Sets whether the expression should be matched against in a case-sensitive way. Default is true.trim
- Boolean (Optional). Sets whether the expression should be trimmed before matching. Default is true.regexExpression
- String (Optional). Defines regExp expression as an OGNL expression - will be evaluated to String.caseSensitiveExpression
- String (Optional). DefinescaseSensitive
param as an OGNL expression - will be evaluated to Boolean.trimExpression
- String (Optional). Defines trim param as an OGNL expression - will be evaluated to Boolean.
You can mix normal params with expression aware params but thus was not tested.
Warning: do not use
${regexExpression}
,${caseSensitiveExpression}
and${trimExpression}
as an expression as this will turn into infinitive loop!
Examples
<validators>
<!-- Plain Validator Syntax -->
<validator type="regex">
<param name="fieldName">myStrangePostcode</param>
<param name="regex"><![CDATA[([aAbBcCdD][123][eEfFgG][456])]]></param>
</validator>
<!-- Field Validator Syntax -->
<field name="myStrangePostcode">
<field-validator type="regex">
<param name="regex"><![CDATA[([aAbBcCdD][123][eEfFgG][456])]]></param>
</field-validator>
</field>
<!-- Field Validator Syntax with expressions -->
<field name="myStrangePostcode">
<field-validator type="regex">
<param name="regexExpression">${regexValue}</param> <!-- will be evaluated as: String getRegexValue() -->
<param name="caseSensitiveExpression">${caseSensitiveValue}</param> <!-- will be evaluated as: boolean getCaseSensitiveValue() -->
<param name="trimExpression">${trimValue}</param> <!-- will be evaluated as: boolean getTrimValue() -->
</field-validator>
</field>
</validators>