wstring
을 소문자로 변환하고 싶습니다. 로케일 정보를 사용하여 많은 답변을 찾았습니다. wstring
에 대해서도 ToLower()
과 같은 기능이 있습니까?wstring을 소문자로 변환
답변
std::towlower
은 원하는 기능입니다 (<cwtype>
). 이 헤더에는 넓은 문자열을 다루는 많은 함수가 포함되어 있습니다.
예 : 도움이
// Convert wstring to upper case
wstring wstrTest = L"I am a STL wstring";
transform(
wstrTest.begin(), wstrTest.end(),
wstrTest.begin(),
towlower);
여러 코드 단위에 걸쳐있는 코드 포인트에서는 제대로 작동하지 않는다고 생각합니다. – user2079303
@ user2079303 C++ (여기에서 C)는 지원되는 모든 코드 포인트가 wchar_t에 들어 맞아야합니다. 즉, 이는 Windows에서만 발생하는 문제입니다. (실제 문제는 코드 포인트에서 1 : 1로 매핑되지 않고 문맥 의존적이라는 것입니다.) – Cubbi
@Cubbi 대부분의 크로스 플랫폼 프로그램에서 윈도우 문제는 문제입니다 :) 그렇습니다. 실제로 그렇습니다. 한 번에 하나의 코드 단위 변환 만 작동하지 않는 유일한 이유는 아닙니다. 매핑 알고리즘은 문자열이 전체적으로 올바르게 작동해야합니다. – user2079303
희망 ..
#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!'
이 방법으로 훌륭하게 작동합니다. – Epirocks
- 1. std :: wstring을 int로 변환
- 2. wstring을 WS_STRING으로 변환
- 3. std :: wstring을 SQLWCHAR로 변환 *
- 4. C++ : wstring을 unsigned char로 변환
- 5. C에서 대문자로 소문자로 변환
- 6. x86 소문자로 변환
- 7. 파일 이름을 소문자로 변환
- 8. 조건부 소문자로 변환
- 9. Smalltalk - 문자열을 소문자로 변환
- 10. mod_rewrite 규칙에서 소문자로 변환
- 11. 액체 - 배열을 소문자로 변환
- 12. XPath - 요소의 텍스트가 소문자로 변환
- 13. apache 환경 변수를 소문자로 변환
- 14. C에서 # JSON 변수를 소문자로 변환
- 15. 문자열 배열 요소를 소문자로 변환
- 16. 대문자를 포함하는 문자열을 소문자로 변환
- 17. 대문자 html 태그를 소문자로 변환
- 18. std :: string을 소문자로 변환 함수
- 19. .htaccess 디렉토리의 대문자에서 소문자로 변환
- 20. C++에서 와이드 char 문자열을 소문자로 변환
- 21. SQL 서버에서 모든 대문자를 소문자로 변환 하시겠습니까?
- 22. PHP 변수 이름을 소문자로 변환 하시겠습니까?
- 23. CSV 파일에서 특정 열을 소문자로 변환
- 24. 모든 대문자 태그를 소문자로 변환 하시겠습니까?
- 25. Xpath 변환 기능은 모든 것을 소문자로 변환합니까?
- 26. 모든 메타 문자를 제외한 문자열을 소문자로 변환
- 27. BATCH : dir/b의 출력을 소문자로 변환
- 28. 표시 중에 jqgrid 데이터를 소문자로 변환
- 29. BeautifulSoup에서 소문자로 XML 태그 변환 안 함
- 30. Sed는 대문자를 소문자로 변환 할 수 없습니다.
http://en.cppreference.com/w/cpp/string/wide/towlower –
"소문자"는 본질적으로 로캘 별 작업이라는 점에 유의하십시오. 터키에서는'towlower ('I'L)! ='i'L' (결과는''ı ''입니다.) –
실제로 변형은 악몽입니다. 링크에서 언급했듯이 소문자 'Σ'는 단어의 위치에 따라 'σ'및 'ς'이며 독일어의 소문자 'SS'는 단어에 따라 'ß'또는 'ss' MASSE "는 호모 그래피에 따라"Maße "또는"masse "가 될 수 있습니다. 자세한 내용은 http://unicode.org/faq/casemap_charprop.html을 참조하십시오. –