- str_t
- 概述
- 函数
- 属性
- str_append 函数
- str_append_char 函数
- str_append_with_len 函数
- str_clear 函数
- str_decode_xml_entity 函数
- str_decode_xml_entity_with_len 函数
- str_end_with 函数
- str_eq 函数
- str_expand_vars 函数
- str_extend 函数
- str_from_float 函数
- str_from_int 函数
- str_from_value 函数
- str_from_wstr 函数
- str_init 函数
- str_insert 函数
- str_insert_with_len 函数
- str_remove 函数
- str_replace 函数
- str_reset 函数
- str_set 函数
- str_set_with_len 函数
- str_start_with 函数
- str_to_float 函数
- str_to_int 函数
- str_to_lower 函数
- str_to_upper 函数
- str_trim 函数
- str_trim_left 函数
- str_trim_right 函数
- str_unescape 函数
- capacity 属性
- size 属性
- str 属性
str_t
概述
可变长度的UTF8字符串。
示例:
str_t s;
str_init(&s, 0);
str_append(&s, "abc");
str_append(&s, "123");
str_reset(&s);
先调str_init进行初始化,最后调用str_reset释放内存。
函数
函数名称 | 说明 |
---|---|
str_append | 追加字符串。 |
str_append_char | 追加一个字符。 |
str_append_with_len | 追加字符串。 |
str_clear | 清除字符串内容。 |
str_decode_xml_entity | 对XML基本的entity进行解码,目前仅支持<>"a;&。 |
str_decode_xml_entity_with_len | 对XML基本的entity进行解码,目前仅支持<>"a;&。 |
str_end_with | 判断字符串是否以指定的子串结尾。 |
str_eq | 判断两个字符串是否相等。 |
str_expand_vars | 将字符串中的变量展开为obj中对应的属性值。 |
str_extend | 扩展字符串到指定的容量。 |
str_from_float | 用浮点数初始化字符串。 |
str_from_int | 用整数初始化字符串。 |
str_from_value | 用value初始化字符串。 |
str_from_wstr | 用value初始化字符串。 |
str_init | 初始化字符串对象。 |
str_insert | 插入子字符串。 |
str_insert_with_len | 插入子字符串。 |
str_remove | 删除子字符串。 |
str_replace | 字符串替换。 |
str_reset | 重置字符串为空。 |
str_set | 设置字符串。 |
str_set_with_len | 设置字符串。 |
str_start_with | 判断字符串是否以指定的子串开头。 |
str_to_float | 将字符串转成浮点数。 |
str_to_int | 将字符串转成整数。 |
str_to_lower | 将字符串转成小写。 |
str_to_upper | 将字符串转成大写。 |
str_trim | 去除首尾指定的字符。 |
str_trim_left | 去除首部指定的字符。 |
str_trim_right | 去除尾部指定的字符。 |
str_unescape | 对字符串进行反转义。如:把”\n”转换成’\n’。 |
属性
属性名称 | 类型 | 说明 |
---|---|---|
capacity | uint32_t | 容量。 |
size | uint32_t | 长度。 |
str | char* | 字符串。 |
str_append 函数
- 函数功能:
追加字符串。
- 函数原型:
ret_t str_append (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要追加的字符串。 |
str_append_char 函数
- 函数功能:
追加一个字符。
- 函数原型:
ret_t str_append_char (str_t* str, char c);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
c | char | 要追加的字符。 |
str_append_with_len 函数
- 函数功能:
追加字符串。
- 函数原型:
ret_t str_append_with_len (str_t* str, char* text, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要追加的字符串。 |
len | uint32_t | 字符串长度。 |
str_clear 函数
- 函数功能:
清除字符串内容。
- 函数原型:
ret_t str_clear (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
str_decode_xml_entity 函数
- 函数功能:
对XML基本的entity进行解码,目前仅支持<>"a;&。
- 函数原型:
ret_t str_decode_xml_entity (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要解码的XML文本。 |
str_decode_xml_entity_with_len 函数
- 函数功能:
对XML基本的entity进行解码,目前仅支持<>"a;&。
- 函数原型:
ret_t str_decode_xml_entity_with_len (str_t* str, char* text, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要解码的XML文本。 |
len | uint32_t | 字符串长度。 |
str_end_with 函数
- 函数功能:
判断字符串是否以指定的子串结尾。
- 函数原型:
bool_t str_end_with (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 返回是否以指定的子串结尾。 |
str | str_t* | str对象。 |
text | char* | 子字符串。 |
str_eq 函数
- 函数功能:
判断两个字符串是否相等。
- 函数原型:
bool_t str_eq (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 返回是否相等。 |
str | str_t* | str对象。 |
text | char* | 待比较的字符串。 |
str_expand_vars 函数
- 函数功能:
将字符串中的变量展开为obj中对应的属性值。
变量的格式为${xxx}:
- xxx为变量名时,${xxx}被展开为obj的属性xxx的值。
- xxx为表达式时,${xxx}被展开为表达式的值,表达式中可以用变量,$为变量的前缀,如${$x+$y}。
- xxx为变量名时,而不存在obj的属性时,${xxx}被移出。
- 函数原型:
ret_t str_expand_vars (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
str_extend 函数
- 函数功能:
扩展字符串到指定的容量。
- 函数原型:
ret_t str_extend (str_t* str, uint32_t capacity);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
capacity | uint32_t | 初始容量。 |
str_from_float 函数
- 函数功能:
用浮点数初始化字符串。
- 函数原型:
ret_t str_from_float (str_t* str, double v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
v | double | 浮点数。 |
str_from_int 函数
- 函数功能:
用整数初始化字符串。
- 函数原型:
ret_t str_from_int (str_t* str, int32_t v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
v | int32_t | 整数。 |
str_from_value 函数
- 函数功能:
用value初始化字符串。
- 函数原型:
ret_t str_from_value (str_t* str, value_t v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
v | value_t | value。 |
str_from_wstr 函数
- 函数功能:
用value初始化字符串。
- 函数原型:
ret_t str_from_wstr (str_t* str, wchar_t* wstr);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
wstr | wchar_t* | wstr。 |
str_init 函数
- 函数功能:
初始化字符串对象。
- 函数原型:
str_t* str_init (str_t* str, uint32_t capacity);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | str_t* | str对象本身。 |
str | str_t* | str对象。 |
capacity | uint32_t | 初始容量。 |
str_insert 函数
- 函数功能:
插入子字符串。
- 函数原型:
ret_t str_insert (str_t* str, uint32_t offset, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
offset | uint32_t | 偏移量。 |
text | char* | 要插入的字符串。 |
str_insert_with_len 函数
- 函数功能:
插入子字符串。
- 函数原型:
ret_t str_insert_with_len (str_t* str, uint32_t offset, char* text, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
offset | uint32_t | 偏移量。 |
text | char* | 要插入的字符串。 |
len | uint32_t | 字符串长度。 |
str_remove 函数
- 函数功能:
删除子字符串。
- 函数原型:
ret_t str_remove (str_t* str, uint32_t offset, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
offset | uint32_t | 偏移量。 |
len | uint32_t | 长度。 |
str_replace 函数
- 函数功能:
字符串替换。
- 函数原型:
ret_t str_replace (str_t* str, char* text, char* new_text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 待替换的子串。 |
new_text | char* | 将替换成的子串。 |
str_reset 函数
- 函数功能:
重置字符串为空。
- 函数原型:
ret_t str_reset (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
str_set 函数
- 函数功能:
设置字符串。
- 函数原型:
ret_t str_set (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要设置的字符串。 |
str_set_with_len 函数
- 函数功能:
设置字符串。
- 函数原型:
ret_t str_set_with_len (str_t* str, char* text, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要设置的字符串。 |
len | uint32_t | 字符串长度。 |
str_start_with 函数
- 函数功能:
判断字符串是否以指定的子串开头。
- 函数原型:
bool_t str_start_with (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 返回是否以指定的子串开头。 |
str | str_t* | str对象。 |
text | char* | 子字符串。 |
str_to_float 函数
- 函数功能:
将字符串转成浮点数。
- 函数原型:
ret_t str_to_float (str_t* str, double* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
v | double* | 用于返回浮点数。 |
str_to_int 函数
- 函数功能:
将字符串转成整数。
- 函数原型:
ret_t str_to_int (str_t* str, int32_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
v | int32_t* | 用于返回整数。 |
str_to_lower 函数
- 函数功能:
将字符串转成小写。
- 函数原型:
ret_t str_to_lower (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
str_to_upper 函数
- 函数功能:
将字符串转成大写。
- 函数原型:
ret_t str_to_upper (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
str_trim 函数
- 函数功能:
去除首尾指定的字符。
- 函数原型:
ret_t str_trim (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要去除的字符集合。 |
str_trim_left 函数
- 函数功能:
去除首部指定的字符。
- 函数原型:
ret_t str_trim_left (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要去除的字符集合。 |
str_trim_right 函数
- 函数功能:
去除尾部指定的字符。
- 函数原型:
ret_t str_trim_right (str_t* str, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
text | char* | 要去除的字符集合。 |
str_unescape 函数
- 函数功能:
对字符串进行反转义。如:把”\n”转换成’\n’。
- 函数原型:
ret_t str_unescape (str_t* str);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
str | str_t* | str对象。 |
capacity 属性
容量。
- 类型:uint32_t
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |
size 属性
长度。
- 类型:uint32_t
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |
str 属性
字符串。
- 类型:char*
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |