diff --git a/convert/text.h b/convert/text.h index ba6c6ca..8fbb98f 100644 --- a/convert/text.h +++ b/convert/text.h @@ -131,6 +131,30 @@ bool EqualNoCase(const StringType1 & str1, const StringType2 & str2) +template +int CompareNoCase(const StringType1 * str1, const StringType2 * str2) +{ + while( *str1 && *str2 && ToLower(*str1) == ToLower(*str2) ) + { + ++str1; + ++str2; + } + + if( *str1 == 0 && *str2 == 0 ) + return 0; + +return (int)ToLower(*str1) - (int)ToLower(*str2); +} + + +template +int CompareNoCase(const StringType1 & str1, const StringType2 & str2) +{ + return CompareNoCase(str1.c_str(), str2.c_str()); +} + + + template bool EqualNoCase(const StringType1 * str1_begin, const StringType1 * str1_end, const StringType2 * str2) {