21 #ifndef AVUTIL_AVSTRING_H
22 #define AVUTIL_AVSTRING_H
42 int av_strstart(
const char *str,
const char *pfx,
const char **ptr);
54 int av_stristart(
const char *str,
const char *pfx,
const char **ptr);
68 char *
av_stristr(
const char *haystack,
const char *needle);
83 char *
av_strnstr(
const char *haystack,
const char *needle,
size_t hay_length);
143 for (i = 0; i < len && s[i]; i++)
201 char *
av_strtok(
char *
s, const
char *delim,
char **saveptr);
208 return c >=
'0' && c <=
'9';
216 return c > 32 && c < 127;
224 return c ==
' ' || c ==
'\f' || c ==
'\n' || c ==
'\r' || c ==
'\t' ||
233 if (c >=
'a' && c <=
'z')
243 if (c >=
'A' && c <=
'Z')
254 return av_isdigit(c) || (c >=
'a' && c <=
'f');
327 #define AV_ESCAPE_FLAG_WHITESPACE (1 << 0)
334 #define AV_ESCAPE_FLAG_STRICT (1 << 1)
353 int av_escape(
char **dst,
const char *
src,
const char *special_chars,
356 #define AV_UTF8_FLAG_ACCEPT_INVALID_BIG_CODES 1
357 #define AV_UTF8_FLAG_ACCEPT_NON_CHARACTERS 2
358 #define AV_UTF8_FLAG_ACCEPT_SURROGATES 4
359 #define AV_UTF8_FLAG_EXCLUDE_XML_INVALID_CONTROL_CODES 8
361 #define AV_UTF8_FLAG_ACCEPT_ALL \
362 AV_UTF8_FLAG_ACCEPT_INVALID_BIG_CODES|AV_UTF8_FLAG_ACCEPT_NON_CHARACTERS|AV_UTF8_FLAG_ACCEPT_SURROGATES
av_warn_unused_result int av_utf8_decode(int32_t *codep, const uint8_t **bufp, const uint8_t *buf_end, unsigned int flags)
Read and decode a single UTF-8 code point (character) from the buffer in *buf, and update *buf to poi...
static av_const int av_isdigit(int c)
Locale-independent conversion of ASCII isdigit.
size_t static size_t av_strnlen(const char *s, size_t len)
Get the count of continuous non zero chars starting from the beginning.
char * av_stristr(const char *haystack, const char *needle)
Locate the first case-independent occurrence in the string haystack of the string needle...
av_warn_unused_result int av_escape(char **dst, const char *src, const char *special_chars, enum AVEscapeMode mode, int flags)
Escape string in src, and put the escaped string in an allocated string in *dst, which must be freed ...
static av_const int av_isspace(int c)
Locale-independent conversion of ASCII isspace.
int av_strncasecmp(const char *a, const char *b, size_t n)
Locale-independent case-insensitive compare.
Macro definitions for various function/variable attributes.
int av_stristart(const char *str, const char *pfx, const char **ptr)
Return non-zero if pfx is a prefix of str independent of case.
const char * av_basename(const char *path)
Thread safe basename.
char char * av_d2str(double d)
Convert a number to an av_malloced string.
Use single-quote escaping.
static av_const int av_tolower(int c)
Locale-independent conversion of ASCII characters to lowercase.
int av_match_list(const char *name, const char *list, char separator)
Check if a name is in a list.
char * av_strireplace(const char *str, const char *from, const char *to)
Locale-independent strings replace.
int av_match_name(const char *name, const char *names)
Match instances of a name in a comma-separated list of names.
size_t av_strlcpy(char *dst, const char *src, size_t size)
Copy the string src to dst, but no more than size - 1 bytes, and null-terminate dst.
char * av_get_token(const char **buf, const char *term)
Unescape the given string until a non escaped terminating char, and return the token corresponding to...
#define av_printf_format(fmtpos, attrpos)
Use auto-selected escaping mode.
int av_strcasecmp(const char *a, const char *b)
Locale-independent case-insensitive compare.
static av_const int av_toupper(int c)
Locale-independent conversion of ASCII characters to uppercase.
static av_const int av_isxdigit(int c)
Locale-independent conversion of ASCII isxdigit.
size_t av_strlcat(char *dst, const char *src, size_t size)
Append the string src to the string dst, but to a total length of no more than size - 1 bytes...
#define av_warn_unused_result
char * av_strtok(char *s, const char *delim, char **saveptr)
Split the string into several tokens which can be accessed by successive calls to av_strtok()...
int av_strstart(const char *str, const char *pfx, const char **ptr)
Return non-zero if pfx is a prefix of str.
static av_const int av_isgraph(int c)
Locale-independent conversion of ASCII isgraph.
char * av_append_path_component(const char *path, const char *component)
Append path component to the existing path.
char * av_strnstr(const char *haystack, const char *needle, size_t hay_length)
Locate the first occurrence of the string needle in the string haystack where not more than hay_lengt...
const char * av_dirname(char *path)
Thread safe dirname.
char * av_asprintf(const char *fmt,...) av_printf_format(1
Print arguments following specified format into a large enough auto allocated buffer.
mode
Use these values in ebur128_init (or'ed).
size_t av_strlcatf(char *dst, size_t size, const char *fmt,...) av_printf_format(3
Append output to a string, according to a format.