我有一个std::wstring,我想找出哪些字符是大写的,哪些是小写的。isupper和islower似乎只适用于ASCII字符,但我希望能够找到所有类型的大小写字符
例如,á是“拉丁文小写字母a with讯”,α是“拉丁文大写字母A with讯”,而ä和ä则是小写和大写的德文字母。
有没有什么函数(mfc、boost或其他库中的函数)可以用来找出一个字符是小写还是大写(与语言环境无关)?
提前感谢
拉胡尔
发布于 2010-12-09 16:11:06
大多数实现都将提供iswXxx函数,即iswupper和iswlower。最大的问题是在宽字符串中使用的编码是未定义的,因此哪些值被确定为大写和小写实际上取决于目标平台。(请注意,iswXxx函数不在标准中)
编辑:比尔是个笨蛋!在std::isupper的<locale>中声明的模板接受char%s和wchar_t%s。(但它需要区域设置对象)
https://stackoverflow.com/questions/4396050
复制相似问题