如何区分中英文字符
在ue4 FString字符串中如何判断每一个字符是中文还是英文?思路是将FString中每一个TCHAR转成UTF8,根据UTF8的长度判断是中文还是英文,中文的长度是3,英文的长度是1。主要用到了UE4封装的FTCHARToUTF8。具体代码如下:
FString somestring; //只包含中英字符
int cnt = 0;
while(cnt <= somestring.Len())
{
//第一个参数:取FString的第cnt个字符的地址
//第二个参数:转换长度为1,如果没有这个长度参数则转换第cnt个字符开始FString所有剩下的参数
FTCHARToUTF8 sometchar_utf8(&somestring[cnt],1);
if(sometchar_utf8.Length() == 3)
//中文
else //sometchar_utf8.Length() == 1
//英文
cnt++;
}