方法
GLibRegexsplit_full
自:2.14
声明 [src]
gchar**
g_regex_split_full (
const GRegex* regex,
const gchar* string,
gssize string_len,
gint start_position,
GRegexMatchFlags match_options,
gint max_tokens,
GError** error
)
描述 [src]
在模式上断开字符串,并返回标记数组。如果模式包含分组圆括号,则还将返回每个子字符串的文本。如果模式在字符串中无处匹配,则将整个字符串作为第一个标记返回。
作为一个特例,分割空字符串“”的结果是空向量,而不是包含单个字符串的向量。这种特殊情况的原因是能够表示空向量通常比一致处理空元素更有用。如果您确实需要表示空元素,您需要在调用此函数之前检查空字符串。
可以匹配空字符串的模式将字符串在匹配到空字符串的位置分割成单独的字符。例如,使用分隔符“\s*”分割“ab c”,您将得到“a”、“b”和“c”。
将start_position
设置与仅传递缩短的字符串并设置G_REGEX_MATCH_NOTBOL
的设置不同,这种情况是模式以任何类型的向后断言开始,如“\b”。
自:2.14
参数
string
-
类型: 一个
gchar
数组用于与模式分割的字符串。
数组的长度由 string_len
参数指定。数据归方法调用者所有。 每个元素都是空终止的UTF-8字符串。 string_len
-
类型:
gssize
string
的长度,字节为单位,如果string
是空终止的,则为-1。 start_position
-
类型:
gint
字符串匹配的起始索引,字节为单位。
match_options
-
类型:
GRegexMatchFlags
匹配时间选项标志。
max_tokens
-
类型:
gint
将字符串分割成标记的最大数量。如果这小于1,则完全分割字符串。
error
-
类型:
GError **
可恢复错误的返回位置。
参数可以是 NULL
。如果返回位置不是 NULL
,那么您必须将其初始化为NULL
的GError*
。如果没有错误,方法将使参数保持初始化为 NULL
。发生错误时,参数将被设置为新的 GError
分配;调用者将获得数据的所有权,并负责释放它。