Method

GLibMatchInfofetch_pos

since: 2.14

Declaration

gboolean
g_match_info_fetch_pos (
  const GMatchInfo* match_info,
  gint match_num,
  gint* start_pos,
  gint* end_pos
)

Description

Retrieves the position in bytes of the match_numth capturing parentheses. 0 is the full text of the match, 1 is the first paren set, 2 the second, and so on.

If match_num is a valid sub pattern but it didn’t match anything (e.g. sub pattern 1, matching “b” against “(a)?b”) then start_pos and end_pos are set to -1 and TRUE is returned.

If the match was obtained using the DFA algorithm, that is using g_regex_match_all() or g_regex_match_all_full(), the retrieved position is not that of a set of parentheses but that of a matched substring. Substrings are matched in reverse order of length, so 0 is the longest match.

Available since: 2.14

Parameters

match_num

Type: gint

Number of the sub expression.

start_pos

Type: gint*

Pointer to location where to store the start position, or NULL.

The argument will be set by the function.
The argument can be NULL.
end_pos

Type: gint*

Pointer to location where to store the end position, or NULL.

The argument will be set by the function.
The argument can be NULL.

Return value

Type: gboolean

TRUE if the position was fetched, FALSE otherwise. If the position cannot be fetched, start_pos and end_pos are left unchanged.