There was a bug in my implementaion. No reason not to use the glibc version.

This commit is contained in:
Hisham Muhammad 2014-01-14 00:21:37 -02:00
parent 7fd5e80429
commit cd692f27f4
2 changed files with 2 additions and 13 deletions

View File

@ -16,6 +16,7 @@ in the source distribution for its full text.
/*{
#define String_startsWith(s, match) (strstr((s), (match)) == (s))
#define String_contains_i(s1, s2) (strcasestr(s1, s2) != NULL)
}*/
char* String_cat(const char* s1, const char* s2) {
@ -91,17 +92,6 @@ void String_freeArray(char** s) {
free(s);
}
int String_contains_i(const char* s, const char* match) {
int lens = strlen(s);
int lenmatch = strlen(match);
for (int i = 0; i < lens-lenmatch; i++) {
if (strncasecmp(s, match, strlen(match)) == 0)
return 1;
s++;
}
return 0;
}
char* String_getToken(const char* line, const unsigned short int numMatch) {
const unsigned short int len = strlen(line);
char inWord = 0;

View File

@ -10,6 +10,7 @@ in the source distribution for its full text.
*/
#define String_startsWith(s, match) (strstr((s), (match)) == (s))
#define String_contains_i(s1, s2) (strcasestr(s1, s2) != NULL)
char* String_cat(const char* s1, const char* s2);
@ -21,8 +22,6 @@ char** String_split(const char* s, char sep, int* n);
void String_freeArray(char** s);
int String_contains_i(const char* s, const char* match);
char* String_getToken(const char* line, const unsigned short int numMatch);
#endif