wstring
を小文字に変換したい。ロケール情報を使った答えがたくさんあることがわかりました。 wstring
のToLower()
のような関数もありますか?
std::towlower
は、<cwtype>
からの必要な関数です。このヘッダーには、幅の広い文字列を処理するための多くの関数が含まれています。
例:
// Convert wstring to upper case
wstring wstrTest = L"I am a STL wstring";
transform(
wstrTest.begin(), wstrTest.end(),
wstrTest.begin(),
towlower);
お役に立てば幸いです。
#include <iostream>
#include <algorithm>
int main ()
{
std::wstring str = L"THIS TEXT!";
std::wcout << "Lowercase of the string '" << str << "' is ";
std::transform(str.begin(), str.end(), str.begin(), ::tolower);
std::wcout << "'" << str << "'\n";
return 0;
}
出力:
Lowercase of the string 'THIS TEXT!' is 'this text!'