stringtools.h
00001
00002
00003
00004
00005
00006
00007
00008 #include <stdlib.h>
00009
00010 #ifndef STRINGTOOLS_H
00011 #define STRINGTOOLS_H
00012
00013 #include "int_sizes.h"
00014
00015 typedef char *(*string_subst_lookup_t) (const char *name, void *arg);
00016
00017 char *escape_shell_string (const char *str);
00018 void string_from_ip_address(const unsigned char *ip_addr_bytes, char *str);
00019 int string_to_ip_address(const char *str, unsigned char *ip_addr_bytes);
00020 int string_ip_subnet(const char *addr, char *subnet);
00021 void string_chomp(char *str);
00022 int whole_string_match_regex(const char *text, const char *pattern);
00023 int string_match_regex(const char *text, char *pattern);
00024 int string_match(const char *pattern, const char *text);
00025 char *string_front(const char *str, int max);
00026 const char *string_back(const char *str, int max);
00027 char *string_metric(double invalue, int power_needed, char *buffer);
00028 INT64_T string_metric_parse(const char *str);
00029 int string_time_parse(const char *str);
00030 int string_split(char *str, int *argc, char ***argv);
00031 int string_split_quotes(char *str, int *argc, char ***argv);
00032 char *string_pad_right(char *str, unsigned int length);
00033 char *string_pad_left(char *str, int length);
00034 void string_cookie(char *str, int length);
00035 char *string_subst(char *value, string_subst_lookup_t lookup, void *arg);
00036 int string_prefix_is(const char *string, const char *prefix);
00037
00044 char *string_combine(char *first, const char *second);
00045 char *string_combine_multi(char *first, ...);
00046 char *string_signal(int sig);
00047 void string_tolower(char *str);
00048 void string_toupper(char *str);
00049 int string_isspace(const char *str);
00050 int string_is_integer(const char *str);
00051 void string_replace_backslash_codes(const char *instr, char *outstr);
00052 int string_equal(const char *str1, const char *str2);
00053
00054 int strpos(const char *str, char c);
00055 int strrpos(const char *str, char c);
00056 int getDateString(char *str);
00057 int string_null_or_empty(const char *str);
00058
00064 char *string_format (const char *fmt, ...)
00065 __attribute__ (( format(printf,1,2) ));
00066
00074 int string_nformat(char *str, const size_t max, const char *fmt, ...);
00075
00076 char *string_trim(char *s, int(func)(int));
00077 char *string_trim_spaces(char *s);
00078 char *string_trim_quotes(char *s);
00079
00085 int string_istrue(const char *str);
00086
00087 #ifndef CCTOOLS_OPSYS_LINUX
00088 char *strsep(char **stringp, const char *delim);
00089 #endif
00090
00091 #endif