since: 2.14


g_regex_match_all (
  const GRegex* regex,
  const gchar* string,
  GRegexMatchFlags match_options,
  GMatchInfo** match_info


Using the standard algorithm for regular expression matching only the longest match in the string is retrieved. This function uses a different algorithm so it can retrieve all the possible matches. For more documentation see g_regex_match_all_full().

A GMatchInfo structure, used to get information on the match, is stored in match_info if not NULL. Note that if match_info is not NULL then it is created even if the function returns FALSE, i.e. you must free it regardless if regular expression actually matched.

string is not copied and is used in GMatchInfo internally. If you use any GMatchInfo method (except g_match_info_free()) after freeing or modifying string then the behaviour is undefined.

Available since: 2.14



Type: const gchar*

The string to scan for matches.

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.

Type: GRegexMatchFlags

Match options.


Type: GMatchInfo

Pointer to location where to store the GMatchInfo, or NULL if you do not need it.

The argument will be set by the function.
The argument can be NULL.
The instance takes ownership of the data, and is responsible for freeing it.

Return value

Type: gboolean

TRUE is the string matched, FALSE otherwise.