有没有内置的函数可以将C++字符串从大写字母转换为小写字母?如果不将其转换为cstring并在每个字符上使用tolower,这是唯一的选择吗?
非常提前感谢您。
发布于 2010-08-04 16:37:08
如果boost是一个选项:
#include <boost/algorithm/string.hpp>
std::string str = "wHatEver";
boost::to_lower(str);否则,您可以使用std::transform
std::string str = "wHatEver";
std::transform(str.begin(), str.end(), str.begin(), ::tolower);如果您有一些可识别区域设置的自定义tolower,也可以使用另一个函数。
发布于 2010-08-04 16:39:53
std::transform(myString.begin(), myString.end(), myString.begin(), std::tolower);发布于 2010-08-04 16:44:06
就像ereOn说的:std::transform(str.begin(), str.end(), str.begin(), std::tolower );
或者通过for_each:std::for_each(str.begin(), str.end(), std::tolower );
Transform可能是这两个中更好的一个。
https://stackoverflow.com/questions/3403844
复制相似问题