get_regex_all

get_regex_all(input: storable, pattern: const regex, [group: const int64]?, [flags: const string]?) -> generic array

Returns an array containing all parts of the argument string that match the given regular expression
(which may be empty if nothing matches.)
There are two optional parameters: a capture group parameter to specify which
group to capture and a string parameter to specify flags:

  • c - Enables case-sensitive matching (default.)
  • i - Enables case-insensitive matching.
  • m - Enables multi-line mode (i.e. meta-characters ^ and $ match the
    beginning and end of any line of the input string.) By default, multi-line
    mode is disabled (i.e. ^ and $ match the beginning and end of the entire
    input string.)
  • s - Enables the POSIX wildcard character . to match \n (newline.) By
    default, . does not match \n.

For more about regular expression syntax, see POSIX extended regular expressions.

This function returns null for the empty regular expression "" for all inputs.
However, for the empty group regular expression "()", it returns an array containing all the empty space ""
between characters for all valid inputs except null.
It returns null in case of null or invalid arguments, or any other error.

Domain

This is a scalar function (calculates a single output value for a single input row).

Categories

Examples

Extract all occurrences of four numbers (length 1-3 digits) separated by
periods, from the input column log, into an array column named dotted_quads.
If no such quads exist in the input log, then an empty array is the result.