1999-08-16 17:58:30 +00:00
|
|
|
<!-- ##### SECTION Title ##### -->
|
|
|
|
String Utility Functions
|
|
|
|
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
2000-09-07 16:36:56 +00:00
|
|
|
various string-related functions.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
This section describes a number of utility functions for creating,
|
|
|
|
duplicating, and manipulating strings.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strdup ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Duplicates a string.
|
|
|
|
The returned string should be freed when no longer needed.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@str: the string to duplicate.
|
|
|
|
@Returns: a newly-allocated copy of @str.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strndup ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Duplicates the first @n characters of a string, returning a newly-allocated
|
|
|
|
buffer @n + 1 characters long which will always be null-terminated.
|
|
|
|
If @str is less than @n characters long the buffer is padded with nulls.
|
|
|
|
The returned value should be freed when no longer needed.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@str: the string to duplicate part of.
|
|
|
|
@n: the maximum number of characters to copy from @str.
|
|
|
|
@Returns: a newly-allocated buffer containing the first @n characters of @str,
|
|
|
|
null-terminated.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
2001-01-05 20:48:43 +00:00
|
|
|
<!-- ##### FUNCTION g_strdupv ##### -->
|
|
|
|
<para>
|
2001-04-16 20:05:25 +00:00
|
|
|
Copies a %NULL-terminated array of strings. The result consists of a
|
|
|
|
%NULL-terminated array, with one malloc block holding the array of strings, and
|
|
|
|
each string itself allocated. The simplest way to free the result is with
|
|
|
|
g_strfreev() which frees each string in a vector, then the vector itself.
|
2001-01-05 20:48:43 +00:00
|
|
|
</para>
|
|
|
|
|
2001-04-16 20:05:25 +00:00
|
|
|
@str_array: array to copy
|
|
|
|
@Returns: a new array
|
2001-01-05 20:48:43 +00:00
|
|
|
|
|
|
|
|
1999-08-16 17:58:30 +00:00
|
|
|
<!-- ##### FUNCTION g_strnfill ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Creates a new string @length characters long filled with @fill_char.
|
|
|
|
The returned string should be freed when no longer needed.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@length: the length of the new string.
|
|
|
|
@fill_char: the character to fill the string with.
|
|
|
|
@Returns: a newly-allocated string filled the @fill_char.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
2001-03-26 18:35:34 +00:00
|
|
|
<!-- ##### FUNCTION g_stpcpy ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@dest:
|
|
|
|
@src:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
2000-09-06 00:04:49 +00:00
|
|
|
<!-- ##### FUNCTION g_strlcpy ##### -->
|
1999-08-16 17:58:30 +00:00
|
|
|
<para>
|
2001-04-16 20:05:25 +00:00
|
|
|
Portability wrapper that calls strlcpy() on systems which have it, and emulates
|
|
|
|
strlcpy() otherwise. Copies @src to @dest; @dest is guaranteed to be
|
|
|
|
nul-terminated; @src must be nul-terminated; @dest_size is the buffer size, not
|
|
|
|
the number of chars to copy. Caveat: strlcpy() is supposedly more secure than
|
|
|
|
strcpy() or strncpy(), but if you really want to avoid screwups, g_strdup() is
|
|
|
|
an even better idea.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2001-04-16 20:05:25 +00:00
|
|
|
@dest: destination buffer
|
|
|
|
@src: source buffer
|
|
|
|
@dest_size: length of @dest in bytes
|
|
|
|
@Returns: length of @src
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
2000-09-06 00:04:49 +00:00
|
|
|
<!-- ##### FUNCTION g_strlcat ##### -->
|
1999-08-16 17:58:30 +00:00
|
|
|
<para>
|
2001-04-16 20:05:25 +00:00
|
|
|
Portability wrapper that calls strlcat() on systems which have it, and emulates
|
|
|
|
strlcat() otherwise. Appends nul-terminated @src string to @dest, guaranteeing
|
|
|
|
nul-termination for @dest. The total size of @dest won't exceed
|
|
|
|
@dest_size. Caveat: this is supposedly a more secure alternative to strcat() or
|
|
|
|
strncat(), but for real security g_strconcat() is harder to mess up.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2001-04-16 20:05:25 +00:00
|
|
|
@dest: destination buffer, already containing one nul-terminated string
|
|
|
|
@src: source buffer
|
|
|
|
@dest_size: length of @dest buffer in bytes (not length of existing string inside @dest)
|
|
|
|
@Returns: length of @src plus initial length of string in @dest
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
2000-09-06 00:04:49 +00:00
|
|
|
<!-- ##### FUNCTION g_strdup_printf ##### -->
|
1999-08-16 17:58:30 +00:00
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Similar to the standard C <function>sprintf()</function> function
|
|
|
|
but safer, since it calculates the maximum space required and allocates
|
|
|
|
memory to hold the result.
|
|
|
|
The returned string should be freed when no longer needed.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
2000-09-06 00:04:49 +00:00
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@format: the standard <function>sprintf()</function> format string.
|
|
|
|
@Varargs: the parameters to insert into the format string.
|
|
|
|
@Returns: a newly-allocated string holding the result.
|
2000-09-06 00:04:49 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strdup_vprintf ##### -->
|
1999-08-16 17:58:30 +00:00
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Similar to the standard C <function>vsprintf()</function> function
|
|
|
|
but safer, since it calculates the maximum space required and allocates
|
|
|
|
memory to hold the result.
|
|
|
|
The returned string should be freed when no longer needed.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
2000-09-06 00:04:49 +00:00
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@format: the standard <function>sprintf()</function> format string.
|
|
|
|
@args: the list of parameters to insert into the format string.
|
|
|
|
@Returns: a newly-allocated string holding the result.
|
2000-09-06 00:04:49 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_snprintf ##### -->
|
1999-08-16 17:58:30 +00:00
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
A safer form of the standard <function>sprintf()</function> function.
|
|
|
|
The output is guaranteed to not exceed @n characters (including the
|
|
|
|
terminating NULL character), so it is easy to ensure that a buffer overflow
|
|
|
|
cannot occur.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
See also g_strdup_printf().
|
|
|
|
</para>
|
|
|
|
<note>
|
|
|
|
<para>
|
|
|
|
In versions of GLib prior to 1.2.3, this function may return -1 if the output
|
|
|
|
was truncated, and the truncated string may not be NULL-terminated.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
2000-09-07 16:36:56 +00:00
|
|
|
</note>
|
1999-08-16 17:58:30 +00:00
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the buffer to hold the output.
|
|
|
|
@n: the maximum number of characters to produce (including the terminating null
|
|
|
|
character).
|
|
|
|
@format: the format string. See the <function>sprintf()</function>
|
|
|
|
documentation.
|
|
|
|
@Varargs: the arguments to insert in the output.
|
|
|
|
@Returns: the length of the output string.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_vsnprintf ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
A safer form of the standard <function>vsprintf()</function> function.
|
|
|
|
The output is guaranteed to not exceed @n characters (including the
|
|
|
|
terminating NULL character), so it is easy to ensure that a buffer overflow
|
|
|
|
cannot occur.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
See also g_strdup_vprintf().
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
2000-09-07 16:36:56 +00:00
|
|
|
<note>
|
|
|
|
<para>
|
|
|
|
In versions of GLib prior to 1.2.3, this function may return -1 if the output
|
|
|
|
was truncated, and the truncated string may not be NULL-terminated.
|
|
|
|
</para>
|
|
|
|
</note>
|
1999-08-16 17:58:30 +00:00
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the buffer to hold the output.
|
|
|
|
@n: the maximum number of characters to produce (including the terminating null
|
|
|
|
character).
|
|
|
|
@format: the format string. See the <function>sprintf()</function>
|
|
|
|
documentation.
|
|
|
|
@args: the list of arguments to insert in the output.
|
|
|
|
@Returns: the length of the output string.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_printf_string_upper_bound ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Calculates the maximum space needed to store the output of the
|
|
|
|
<function>sprintf()</function> function.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@format: the format string. See the <function>printf()</function>
|
|
|
|
documentation.
|
|
|
|
@args: the parameters to be inserted into the format string.
|
|
|
|
@Returns: the maximum space needed to store the formatted string.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
2001-08-25 22:29:40 +00:00
|
|
|
<!-- ##### FUNCTION g_ascii_isalnum ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is alphanumeric.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isalnum function, this only
|
|
|
|
recognizes standard ASCII letters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII alphanumeric character
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isalpha ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is alphabetic (i.e. a letter).
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isalpha function, this only
|
|
|
|
recognizes standard ASCII letters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII alphabetic character
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_iscntrl ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a control character.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library iscntrl function, this only
|
|
|
|
recognizes standard ASCII control characters and ignores the locale,
|
|
|
|
returning%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII control character.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isdigit ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is digit (0-9).
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isdigit function, this only
|
|
|
|
recognizes standard ASCII digits and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII digit.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isgraph ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a printing character and not a space.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isgraph function, this only
|
|
|
|
recognizes standard ASCII characters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII printing character other than space.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_islower ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is an ASCII lower case letter.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library islower function, this only
|
|
|
|
recognizes standard ASCII letters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to worry about casting to guchar before passing
|
|
|
|
a possibly non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII lower case letter
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isprint ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a printing character.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isprint function, this only
|
|
|
|
recognizes standard ASCII characters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII printing character.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_ispunct ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a punctuation character.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library ispunct function, this only
|
|
|
|
recognizes standard ASCII letters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII punctuation character.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isspace ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a white-space character.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isspace function, this only
|
|
|
|
recognizes standard ASCII white-space and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to cast to guchar before passing a possibly
|
|
|
|
non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII white-space character
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isupper ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is an ASCII upper case letter.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isupper function, this only
|
|
|
|
recognizes standard ASCII letters and ignores the locale, returning
|
|
|
|
%FALSE for all non-ASCII characters. Also unlike the standard
|
|
|
|
library function, this takes a char, not an int, so don't call it
|
|
|
|
on EOF but no need to worry about casting to guchar before passing
|
|
|
|
a possibly non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII upper case letter
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_isxdigit ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether a character is a hexadecimal-digit character.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Unlike the standard C library isxdigit function, this only
|
|
|
|
recognizes standard ASCII hexadecimal digits and ignores the
|
|
|
|
locale, returning %FALSE for all non-ASCII characters. Also unlike
|
|
|
|
the standard library function, this takes a char, not an int, so
|
|
|
|
don't call it on EOF but no need to cast to guchar before passing a
|
|
|
|
possibly non-ASCII character in.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c: any characted
|
|
|
|
@Returns: %TRUE if @c is an ASCII hexadecimal-digit character.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_digit_value ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_xdigit_value ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_strcasecmp ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@s1:
|
|
|
|
@s2:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_strncasecmp ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@s1:
|
|
|
|
@s2:
|
|
|
|
@n:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_strup ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@string:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_strdown ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@string:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_tolower ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_ascii_toupper ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@c:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_string_ascii_up ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@string:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_string_ascii_down ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@string:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
1999-08-16 17:58:30 +00:00
|
|
|
<!-- ##### FUNCTION g_strup ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Converts a string to upper case.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the string to convert.
|
2000-09-06 00:04:49 +00:00
|
|
|
@Returns:
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strdown ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Converts a string to lower case.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the string to convert.
|
2000-09-06 00:04:49 +00:00
|
|
|
@Returns:
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strcasecmp ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
A case-insensitive string comparison, corresponding to the standard
|
|
|
|
<function>strcasecmp()</function> function on platforms which support it.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@s1: a string.
|
|
|
|
@s2: a string to compare with @s1.
|
|
|
|
@Returns: 0 if the strings match, a negative value if @s1 < @s2, or a positive
|
|
|
|
value if @s1 > @s2.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strncasecmp ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
A case-insensitive string comparison, corresponding to the standard
|
|
|
|
<function>strncasecmp()</function> function on platforms which support it.
|
|
|
|
It is similar to g_strcasecmp() except it only compares the first @n characters
|
|
|
|
of the strings.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@s1: a string.
|
|
|
|
@s2: a string to compare with @s1.
|
|
|
|
@n: the maximum number of characters to compare.
|
|
|
|
@Returns: 0 if the strings match, a negative value if @s1 < @s2, or a positive
|
|
|
|
value if @s1 > @s2.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strreverse ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Reverses all of the characters in a string.
|
|
|
|
For example, g_strreverse ("abcdef") would be "fedcba".
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the string to reverse.
|
2000-09-06 00:04:49 +00:00
|
|
|
@Returns:
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strtod ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Converts a string to a gdouble value.
|
|
|
|
It calls the standard <function>strtod()</function> function
|
|
|
|
to handle the conversion, but if the string is not completely converted
|
|
|
|
it attempts the conversion again in the "C" locale, and returns the best
|
|
|
|
match.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@nptr: the string to convert to a numeric value.
|
|
|
|
@endptr: if non-NULL, it returns the character after the last character used
|
|
|
|
in the conversion.
|
|
|
|
@Returns: the gdouble value.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strchug ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Removes leading whitespace from a string, by moving the rest of the
|
|
|
|
characters forward.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: a string to remove the leading whitespace from.
|
|
|
|
@Returns: @string.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strchomp ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Removes trailing whitespace from a string.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: a string to remove the trailing whitespace from.
|
|
|
|
@Returns: @string.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### MACRO g_strstrip ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Removes leading and trailing whitespace from a string.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: a string to remove the leading and trailing whitespace from.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strdelimit ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Converts any delimiter characters in @string to @new_delimiter.
|
|
|
|
Any characters in @string which are found in @delimiters are changed
|
|
|
|
to the @new_delimiter character.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string: the string to convert.
|
|
|
|
@delimiters: a string containing the current delimiters, or NULL to use the
|
|
|
|
standard delimiters defined in #G_STR_DELIMITERS.
|
|
|
|
@new_delimiter: the new delimiter character.
|
1999-08-16 17:58:30 +00:00
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### MACRO G_STR_DELIMITERS ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
The standard delimiters, used in #g_strdelimit.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strescape ##### -->
|
|
|
|
<para>
|
2000-10-31 14:55:23 +00:00
|
|
|
Escapes the special characters '\b', '\f', '\n', '\r', '\t', '\' and
|
|
|
|
'"' in the string @source by inserting a '\' before
|
|
|
|
them. Additionally all characters in the range 0x01-0x1F (everything
|
|
|
|
below SPACE) and in the range 0x80-0xFF (all non-ASCII chars) are
|
|
|
|
replaced with a '\' followed by their octal representation. Characters
|
|
|
|
supplied in @exceptions are not escaped.
|
2000-09-06 00:04:49 +00:00
|
|
|
</para>
|
|
|
|
|
2000-10-31 14:55:23 +00:00
|
|
|
<para>
|
|
|
|
g_strcompress() does the reverse conversion.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@source: a string to escape.
|
|
|
|
@exceptions: a string of characters not to escape in @source.
|
|
|
|
@Returns: a newly allocated copy of @source with certain
|
|
|
|
characters escaped. See above.
|
2000-09-06 00:04:49 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strcompress ##### -->
|
|
|
|
<para>
|
2000-10-31 14:55:23 +00:00
|
|
|
Replaces all escaped characters with their one byte equivalent. It
|
|
|
|
does the reverse conversion of g_strescape().
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-10-31 14:55:23 +00:00
|
|
|
@source: a string to compress.
|
|
|
|
@Returns: a newly allocated copy of @source with all escaped
|
|
|
|
character compressed.
|
2000-09-06 00:04:49 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strcanon ##### -->
|
|
|
|
<para>
|
2001-04-16 20:05:25 +00:00
|
|
|
For each character in @string, if the character is not in @valid_chars,
|
|
|
|
replaces the character with @substitutor. Modifies @string in place,
|
|
|
|
and return @string itself, not a copy. The return value is to allow
|
|
|
|
nesting such as g_strup (g_strcanon (str)).
|
2000-09-06 00:04:49 +00:00
|
|
|
</para>
|
|
|
|
|
2001-04-16 20:05:25 +00:00
|
|
|
@string: a nul-terminated array of bytes
|
|
|
|
@valid_chars: bytes permitted in @string
|
|
|
|
@substitutor: replacement character for disallowed bytes
|
|
|
|
@Returns: @string
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strsplit ##### -->
|
|
|
|
<para>
|
2001-08-24 15:27:23 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
@string:
|
|
|
|
@delimiter:
|
|
|
|
@max_tokens:
|
|
|
|
@Returns:
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strfreev ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Frees a NULL-terminated array of strings, and the array itself.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@str_array: a NULL-terminated array of strings to free.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strconcat ##### -->
|
|
|
|
<para>
|
2001-04-16 20:05:25 +00:00
|
|
|
Concatenates all of the given strings into one long string. The returned string
|
|
|
|
should be freed when no longer needed. WARNING: THE VARIABLE ARGUMENT LIST MUST
|
|
|
|
END WITH %NULL. If you forget the %NULL, g_strconcat() will start appending
|
|
|
|
random memory junk to your string.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@string1: The first string to add, which must not be NULL.
|
|
|
|
@Varargs: a NULL-terminated list of strings to append to the string.
|
|
|
|
@Returns: a newly-allocated string containing all the string arguments.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strjoin ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Joins a number of strings together to form one long string, with the optional
|
|
|
|
@separator inserted between each of them.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@separator: a string to insert between each of the strings, or NULL.
|
|
|
|
@Varargs: a NULL-terminated list of strings to join.
|
|
|
|
@Returns: a newly-allocated string containing all of the strings joined
|
|
|
|
together, with @separator between them.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strjoinv ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Joins a number of strings together to form one long string, with the optional
|
|
|
|
@separator inserted between each of them.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@separator: a string to insert between each of the strings, or NULL.
|
|
|
|
@str_array: a NULL-terminated array of strings to join.
|
|
|
|
@Returns: a newly-allocated string containing all of the strings joined
|
|
|
|
together, with @separator between them.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strerror ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Returns a string corresponding to the given error code, e.g. "no such process".
|
|
|
|
This function is included since not all platforms support the
|
|
|
|
<function>strerror()</function> function.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@errnum: the system error number. See the standard C %errno
|
|
|
|
documentation.
|
|
|
|
@Returns: a string describing the error code.
|
|
|
|
If the error code is unknown, it returns "unknown error (<code>)".
|
|
|
|
The string can only be used until the next call to g_strerror.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION g_strsignal ##### -->
|
|
|
|
<para>
|
2000-09-07 16:36:56 +00:00
|
|
|
Returns a string describing the given signal, e.g. "Segmentation fault".
|
|
|
|
This function is included since not all platforms support the
|
|
|
|
<function>strsignal()</function> function.
|
1999-08-16 17:58:30 +00:00
|
|
|
</para>
|
|
|
|
|
2000-09-07 16:36:56 +00:00
|
|
|
@signum: the signal number. See the <literal>signal</literal>
|
|
|
|
documentation.
|
|
|
|
@Returns: a string describing the signal.
|
|
|
|
If the signal is unknown, it returns "unknown signal (<signum>)".
|
|
|
|
The string can only be used until the next call to g_strsignal.
|
1999-08-16 17:58:30 +00:00
|
|
|
|
|
|
|
|