取得汉字拼音首字母函数,取得汉字串首字母

时间:2022-02-01 08:00:43
1、取得汉字首字母函数,包含大部分常见汉字,如:"中" -> "Z"
  1. //获取汉字的首字母
  2. function getpychar(c : string ) : string;
  3. begin
  4.   if Length(c) < 1 then
  5.   begin
  6.     result := '';
  7.     exit;
  8.   end;
  9.   if ord(c[1]) < 128 then
  10.   begin
  11.     result := UpperCase(c);
  12.     exit;
  13.   end;
  14.   case WORD(c[1]) shl 8 + WORD(c[2]) of
  15.   $B0A1..$B0C4 : result := 'A';
  16.   $B0C5..$B2C0 : result := 'B';
  17.   $B2C1..$B4ED : result := 'C';
  18.   $B4EE..$B6E9 : result := 'D';
  19.   $B6EA..$B7A1 : result := 'E';
  20.   $B7A2..$B8C0 : result := 'F';
  21.   $B8C1..$B9FD : result := 'G';
  22.   $B9FE..$BBF6 : result := 'H';
  23.   $BBF7..$BFA5 : result := 'J';
  24.   $BFA6..$C0AB : result := 'K';
  25.   $C0AC..$C2E7 : result := 'L';
  26.   $C2E8..$C4C2 : result := 'M';
  27.   $C4C3..$C5B5 : result := 'N';
  28.   $C5B6..$C5BD : result := 'O';
  29.   $C5BE..$C6D9 : result := 'P';
  30.   $C6DA..$C8BA : result := 'Q';
  31.   $C8BB..$C8F5 : result := 'R';
  32.   $C8F6..$CBF9 : result := 'S';
  33.   $CBFA..$CDD9 : result := 'T';
  34.   $CDDA..$CEF3 : result := 'W';
  35.   $CEF4..$D188 : result := 'X';
  36.   $D1B9..$D4D0 : result := 'Y';
  37.   $D4D1..$D7F9 : result := 'Z';
  38.   else
  39.   result := UpCase(char(0));
  40.   end;
  41. end;
2、取得汉字字符串首字母串,调用上面的函数,包含大部分汉字,如:"中国" -> "ZZ"
  1. //生成汉字串首字母串
  2. function getpy(str : string) : string;
  3. var i : integer;
  4. begin
  5.   result := '';
  6.   for i := 1 to length(str) do
  7.    result := result + getpychar(midStr(str,i,1));
  8. end;