## org.codehaus.groovy.grails.validation.routines
Class RegexValidator

    java.lang.Object
      org.codehaus.groovy.grails.validation.routines.RegexValidator

All Implemented Interfaces:
  Serializable

    public class RegexValidator

extends Object
implements Serializable

Regular Expression validation (using JDK 1.4+ regex support).

Construct the validator either for a single regular expression or a set (array) of regular expressions. By default validation is case sensitive but constructors are provided to allow case in-sensitive validation. For example to create a validator which does case in-sensitive validation for a set of regular expressions:

             String[] regexs = new String[] {...};
             RegexValidator validator = new RegexValidator(regexs, false);

- Validate `true` or `false`:

- `boolean valid = validator.isValid(value);`

- Validate returning an aggregated String of the matched groups:

- `String result = validator.validate(value);`

- Validate returning the matched groups:

- `String[] result = validator.match(value);`

Cached instances pre-compile and re-use `Pattern`(s) - which according to the `Pattern` API are safe to use in a multi-threaded environment.

Since:
  Validator 1.4
Version:
  $Revision: 595023 $ $Date: 2007-11-14 22:49:23 +0300 (Ср, 14 ноя 2007) $
See Also:
  Serialized Form

Constructor Summary
`RegexValidator(String regex)` Construct a case sensitive validator for a single regular expression.
`RegexValidator(String[] regexs)` Construct a case sensitive validator that matches any one of the set of regular expressions.
`RegexValidator(String[] regexs, boolean caseSensitive)` Construct a validator that matches any one of the set of regular expressions with the specified case sensitivity.
`RegexValidator(String regex, boolean caseSensitive)` Construct a validator for a single regular expression with the specified case sensitivity.

Method Summary
`boolean` `isValid(String value)` Validate a value against the set of regular expressions.
`String[]` `match(String value)` Validate a value against the set of regular expressions returning the array of matched groups.
`String` `toString()` Provide a String representation of this validator.
`String` `validate(String value)` Validate a value against the set of regular expressions returning a String value of the aggregated groups.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### RegexValidator

    public RegexValidator(String regex)

  Construct a case sensitive validator for a single regular expression.

  Parameters:
    `regex` - The regular expression this validator will validate against

### RegexValidator

    public RegexValidator(String regex,
                          boolean caseSensitive)

  Construct a validator for a single regular expression with the specified case sensitivity.

  Parameters:
    `regex` - The regular expression this validator will validate against
    `caseSensitive` - when `true` matching is case sensitive, otherwise matching is case in-sensitive

### RegexValidator

    public RegexValidator(String[] regexs)

  Construct a case sensitive validator that matches any one of the set of regular expressions.

  Parameters:
    `regexs` - The set of regular expressions this validator will validate against

### RegexValidator

    public RegexValidator(String[] regexs,
                          boolean caseSensitive)

  Construct a validator that matches any one of the set of regular expressions with the specified case sensitivity.

  Parameters:
    `regexs` - The set of regular expressions this validator will validate against
    `caseSensitive` - when `true` matching is case sensitive, otherwise matching is case in-sensitive

Method Detail

### isValid

    public boolean isValid(String value)

  Validate a value against the set of regular expressions.

  Parameters:
    `value` - The value to validate.
  Returns:
    `true` if the value is valid otherwise `false`.

### match

    public String[] match(String value)

  Validate a value against the set of regular expressions returning the array of matched groups.

  Parameters:
    `value` - The value to validate.
  Returns:
    String array of the groups matched if valid or `null` if invalid

### validate

    public String validate(String value)

  Validate a value against the set of regular expressions returning a String value of the aggregated groups.

  Parameters:
    `value` - The value to validate.
  Returns:
    Aggregated String value comprised of the groups matched if valid or `null` if invalid

### toString

    public String toString()

  Provide a String representation of this validator.

  Overrides:
    `toString` in class `Object`
  Returns:
    A String representation of this validator

Copyright (c) 2005-2009 The Grails project