MatchInfo.fetchPos

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.

class MatchInfo
bool
fetchPos
(,
out int startPos
,
out int endPos
)

Parameters

matchNum int

number of the sub expression

startPos int

pointer to location where to store the start position, or %NULL

endPos int

pointer to location where to store the end position, or %NULL

Return Value

Type: bool

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

Meta

Since

2.14