1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- #include "private.h"
- #include "lub/ctype.h"
- const char *lub_string_nocasestr(const char *cs, const char *ct)
- {
- const char *p = NULL;
- const char *result = NULL;
- while (*cs) {
- const char *q = cs;
- p = ct;
-
-
- while (*p && *q
- && (lub_ctype_tolower(*p) == lub_ctype_tolower(*q))) {
- p++, q++;
- }
- if (0 == *p) {
- break;
- }
- cs++;
- }
- if (p && !*p) {
-
- result = cs;
- }
- return result;
- }
- unsigned int lub_string_equal_part(const char *str1, const char *str2)
- {
- unsigned int cnt = 0;
- if (!str1 || !str2)
- return cnt;
- while (*str1 && *str2) {
- if (*str1 != *str2)
- break;
- cnt++;
- str1++;
- str2++;
- }
- return cnt;
- }
|