Class RegexTool


  • public class RegexTool
    extends Object
    Velocity Tool offering various Regex-based APIs to make it easy to manipulate regular expressions from Velocity.
    Since:
    2.0RC2
    Version:
    $Id: ba5f8901e072682cfd69bca5cd24d4212ef0563e $
    • Constructor Detail

      • RegexTool

        public RegexTool()
    • Method Detail

      • find

        public List<RegexTool.RegexResult> find​(String content,
                                                String regex)
        Parameters:
        content - the content to parse
        regex - the regex to look for in the passed content
        Returns:
        empty list if the passed regex doesn't match the content or several RegexTool.RegexResult objects containing the matched position and matched content for all capturing groups, the first group representing the whole . The first object is represents the entire pattern
      • findAll

        public List<List<RegexTool.RegexResult>> findAll​(String content,
                                                         String regex)
        Parameters:
        content - the content to parse
        regex - the regular expression to look for in the passed content
        Returns:
        an empty list if the passed regular expression doesn't match the content, several RegexTool.RegexResult objects containing the matched position and matched content for all capturing groups and sub-groups otherwise
      • compile

        public Pattern compile​(String regex)
        Compiles a regular expression into a java Pattern object.
        Parameters:
        regex - the textual representation of the regular expression
        Returns:
        the Pattern object corresponding to the regular expression, or null if the expression is invalid
        Since:
        2.3M1
      • quote

        public String quote​(String s)
        Returns a literal pattern String for the specified String.

        This method produces a String that can be used to create a Pattern that would match the string s as if it were a literal pattern.

        Metacharacters or escape sequences in the input sequence will be given no special meaning.
        Parameters:
        s - The string to be literalized
        Returns:
        A literal string replacement
        Since:
        2.4M2
      • quoteReplacement

        public String quoteReplacement​(String s)
        Returns a literal replacement String for the specified String. This method produces a String that will work as a literal replacement s in String#replaceAll(regularExpression, s). The String produced will match the sequence of characters in s treated as a literal sequence. Slashes ('\') and dollar signs ('$') will be given no special meaning.
        Parameters:
        s - the string to be literalized
        Returns:
        a literal string replacement
        Since:
        8.2RC1