我有一个string,包含UTF-8字符,我有一个方法,应该将每个字符转换为大写或小写,这很容易完成与ASCII重叠的字符,显然有些字符不能转换,例如任何汉字。 然而,是否有一个很好的方法来检测和转换其他字符,可以是上/下,例如所有的希腊字符? 另外请注意,我需要能够在Windows和Linux上执行此操作。
谢谢,
看看ICU 。
请注意,小写字母到大写字母的功能是由语言环境决定的。 想想得到“无点的小写字母i”的土耳其语(ascii)字母I,以及用大写字母“大写字母i”的(ascii)i。
假设您可以访问wctype.h,然后将您的文本转换为一个2字节的Unicode字符串,并使用towupper()。 然后将其转换回UTF-8。