日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Delphi XE2获取汉字拼音首字母

發布時間:2023/11/29 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Delphi XE2获取汉字拼音首字母 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

function CnPYIndex(const CnString: string): string;
{
? 返回中文的拼音首字母
}
const
? ChinaCode:
array[0..25, 0..1] of Integer = ((1601, 1636), (1637, 1832), (1833, 2077),
??? (
2078, 2273), (2274, 2301), (2302, 2432), (2433, 2593), (2594, 2786), (9999, 0000),
??? (
2787, 3105), (3106, 3211), (3212, 3471), (3472, 3634), (3635, 3722), (3723, 3729),
??? (
3730, 3857), (3858, 4026), (4027, 4085), (4086, 4389), (4390, 4557), (9999, 0000),
??? (
9999, 0000), (4558, 4683), (4684, 4924), (4925, 5248), (5249, 5589));
var
? i, j, HzOrd, l_iHz: Integer;
? Hz: AnsiString;
begin
? i :
=? 1;
? l_iHz :
=1;
?
while i <= Length(CnString) do
?
begin
??? Hz :
= CnString[i];
???
if (Hz[l_iHz] >= #160) and (Hz[l_iHz +1] >= #160) then
???
begin
????? HzOrd :
= (Ord(Hz[l_iHz]) -160) *100+ Ord(Hz[l_iHz +1]) -160;
?????
for j :=0to25do
?????
begin
???????
if (HzOrd >= ChinaCode[j][0]) and (HzOrd <= ChinaCode[j][1]) then
???????
begin
????????? Result :
= Result + Char(Byte('A') + j);//改A為a就全部是小寫
????????? Break;
???????
end;
?????
end;
???
end
???
else
????? Result :
= Result + CnString[i];
??? Inc(i);
?
end;
end;

總結

以上是生活随笔為你收集整理的Delphi XE2获取汉字拼音首字母的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。