logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

rgxg_utils_alternation - create regex that matches any of the given patterns

Author

       Hannes von Haugwitz <hannes@vonhaugwitz.com>

rgxg 0.1.2                                        Apr 12, 2020                         RGXG_UTILS_ALTERNATION(3)

Availability

       This function is available since rgxg 0.1.

Description

rgxg_utils_alternation()  generates  the  (extended)  regular  expression  that  matches any of the given
       patterns, an array of constant character strings.  size specifies the number of entries of the  array  to
       use for the regular expression. Both patterns and its entries must be valid and not NULL for size>0.

       Note  that callers of rgxg_utils_alternation() which pass a non-constant 'char **' value as patterns need
       to use an explicit cast (i.e. '(const char**)') to avoid an incompatible pointer type warning.

       The generated regular expression is written to the character string regex, including the terminating null
       byte ('\0'), unless RGXG_NONULLBYTE is set. If regex is NULL the return value is the number of characters
       (excluding the terminating null byte) that would have been written in case regex  has  been  initialized.
       Note  that  the  functions  assume  an  arbitrarily long regex string, callers must ensure that the given
       string is large enough to not overflow the actual space.

       options is either zero, or the bitwise-or of one or more of the following macros:

       RGXG_NOOUTERPARENS
              Omit the outer parenthesis, if any, of the regular expression.

       RGXG_NONULLBYTE
              Do not add the terminating null byte ('\0') to the regex string.

Name

       rgxg_utils_alternation - create regex that matches any of the given patterns

Return Value

rgxg_utils_alternation() returns the number of characters (excluding the terminating null  byte)  written
       to regex.

See Also

regex(7), rgxg_utils_escape_string(3).

Synopsis

#include<rgxg/utils.h>intrgxg_utils_alternation(constchar**patterns,size_tsize,char*regex,rgxg_options_toptions);

See Also