.h //计算各类型字符数量 UFUNCTION(BlueprintCallable, Category = "UI") void GetCharacterNumber(FString szTxt, int& nChinese, int& nEnlish, int& nNumber, int& nOther) .cpp void URealisWidget::GetCharacterNumber(FString szTxt, int& nChinese, int& nEnlish, int& nNumber, int& nOther) { //获得字符串按字节数计算的长度 int Lenth = UKismetStringLibrary::Len(szTxt); int nELenth = 0; //英文字符数 int nCLenth = 0; //中文字符数 int nNLenth = 0; //数字字符数 int nOLenth = 0; //其他字符数 int nTotalLenth = 0;//总共字符数 for (TCHAR c : szTxt) { //是中文字符 中文字符编码 1XXX XXXX 1XXX XXXX if (c < 0 || c>255) continue; //是英文字符 else if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z')) nELenth++; else if (c >= '0' && c <= '9') nNLenth++; else nOLenth++; } //计算中文字符数,每个中文字符占两个字节 nCLenth = Lenth - nELenth - nNLenth - nOLenth; nChinese = nCLenth; nEnlish = nELenth; nNumber = nNLenth; nOther = nOLenth; }