mirror of
https://github.com/opencv/opencv.git
synced 2025-06-10 19:24:07 +08:00
core: backport toLowerCase()/toUpperCase()
This commit is contained in:
parent
baf372ad3d
commit
681e0323f2
@ -1026,6 +1026,40 @@ static inline bool operator>= (const String& lhs, const String& rhs) { return lh
|
|||||||
static inline bool operator>= (const char* lhs, const String& rhs) { return rhs.compare(lhs) <= 0; }
|
static inline bool operator>= (const char* lhs, const String& rhs) { return rhs.compare(lhs) <= 0; }
|
||||||
static inline bool operator>= (const String& lhs, const char* rhs) { return lhs.compare(rhs) >= 0; }
|
static inline bool operator>= (const String& lhs, const char* rhs) { return lhs.compare(rhs) >= 0; }
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef OPENCV_DISABLE_STRING_LOWER_UPPER_CONVERSIONS
|
||||||
|
|
||||||
|
//! @cond IGNORED
|
||||||
|
namespace details {
|
||||||
|
// std::tolower is int->int
|
||||||
|
static inline char char_tolower(char ch)
|
||||||
|
{
|
||||||
|
return (char)std::tolower((int)ch);
|
||||||
|
}
|
||||||
|
// std::toupper is int->int
|
||||||
|
static inline char char_toupper(char ch)
|
||||||
|
{
|
||||||
|
return (char)std::toupper((int)ch);
|
||||||
|
}
|
||||||
|
} // namespace details
|
||||||
|
//! @endcond
|
||||||
|
|
||||||
|
static inline std::string toLowerCase(const std::string& str)
|
||||||
|
{
|
||||||
|
std::string result(str);
|
||||||
|
std::transform(result.begin(), result.end(), result.begin(), details::char_tolower);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline std::string toUpperCase(const std::string& str)
|
||||||
|
{
|
||||||
|
std::string result(str);
|
||||||
|
std::transform(result.begin(), result.end(), result.begin(), details::char_toupper);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // OPENCV_DISABLE_STRING_LOWER_UPPER_CONVERSIONS
|
||||||
|
|
||||||
//! @} relates cv::String
|
//! @} relates cv::String
|
||||||
|
|
||||||
} // cv
|
} // cv
|
||||||
|
Loading…
Reference in New Issue
Block a user