Class RegexValidator

  • All Implemented Interfaces:
    Serializable

    @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class)
    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.isValidRootUrl(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);
    Note that patterns are matched against the entire input.

    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: 1739356 $
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      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.
    • 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