35 #define _________________________________________INTERFACE_SECTION__________________________________________________________________________ 37 void string_reverse(
char * String )
39 uint32_t stringLength = strlen(String);
40 uint32_t leftIndex = 0;
41 uint32_t rightIndex = stringLength - 1;
42 uint32_t leftEndIndex = stringLength / 2;
45 while(leftIndex < leftEndIndex)
47 savedSign = String[leftIndex];
49 String[leftIndex] = String[rightIndex];
50 String[rightIndex] = savedSign;
57 void remove_in_string(
char * String , uint32_t Index , uint32_t NumberOfCharacters )
59 uint32_t length = strlen(String);
60 uint32_t lengthAfterRemove = length - NumberOfCharacters;
62 for(uint32_t i = Index ; i < length ; i++)
64 if(i < lengthAfterRemove)
66 String[i] = String[i+NumberOfCharacters];
75 uint32_t put_to_string(
char * String , uint32_t Size , uint32_t Index ,
char C )
77 uint32_t length = strlen(String);
78 uint32_t lengthAfterPut = length + 1;
79 uint32_t maxStringLength= Size - 1;
80 if(Size > 1 && Index < maxStringLength)
82 if(lengthAfterPut > maxStringLength)
84 lengthAfterPut = maxStringLength;
86 for(uint32_t i = (lengthAfterPut - 1); i > Index ; i--)
88 String[i] = String[i-1];
92 String[lengthAfterPut] = 0;
97 uint32_t string_backspace(
char * String , uint32_t Index )
99 uint32_t length = strlen(String);
100 if(Index <= length && Index > 0)
103 if(Index > 0 && String[Index] ==
'\r' && String[Index-1] ==
'\n')
106 remove_in_string(String,Index,2);
110 remove_in_string(String,Index,1);
117 bool string_contains(
const char * String ,
const char * SubString ,
bool CaseSensitive )
121 return strstr(String,SubString) !=
NULL;
125 return strcasestr(String,SubString) !=
NULL;
129 bool string_contains_special_characters(
const char * String)
131 bool contains =
false;
135 uint32_t length = strlen(String);
137 for(uint32_t i = 0 ; i < length ; i++)
139 if( (uint8_t)String[i] < (uint8_t)
'0' ||
140 ( (uint8_t)String[i] > (uint8_t)
'9' && (uint8_t)String[i] < (uint8_t)
'A' ) ||
141 ( (uint8_t)String[i] > (uint8_t)
'Z' && (uint8_t)String[i] < (uint8_t)
'a' ) ||
142 ( (uint8_t)String[i] > (uint8_t)
'z')
154 #undef _________________________________________INTERFACE_SECTION__________________________________________________________________________ The file with interface for string library.
#define NULL
pointer to a zero