### Method

# GLib MatchInfo fetch_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_num`‘th 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.