方法

GLibMatchInfofetch_all

自: 2.14

声明 [源]

gchar**
g_match_info_fetch_all (
  const GMatchInfo* match_info
)

描述 [源]

从匹配字符串中收集每个匹配子字符串的指针,并将它们存储在一个 gchar 指针数组中。返回数组中的第一个元素是匹配号 0,即整个匹配文本。

如果子模式没有匹配任何内容(例如,对子模式 1,将 “b” 匹配到 “(a)?b”),则插入一个空字符串。

如果最后一次匹配是通过 DFA 算法获得的,即使用 g_regex_match_all() 或 g_regex_match_all_full(),检索的字符串不是由一系列括号匹配的,而是由匹配的子字符串。子字符串按长度逆序匹配,因此第一个是最长匹配。

字符串是从传递给匹配函数的字符串中检索的,因此不能在释放字符串后调用此函数。

自 2.14 以来可用

返回值

类型: utf8 的数组

一个以 NULL 结尾的 gchar * 指针数组。必须使用 g_strfreev() 释放它。如果之前匹配失败,则返回 NULL

数组以 NULL 结尾。
方法调用者拥有返回的数据,并负责释放它。
每个元素都是一个以 NUL 结尾的 UTF-8 字符串。