下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Delphi用拼音首字符序列实现检索功能原理很简洁,找出汉字表中拼音首字符分别为“A”至“Z”的汉字内码范围,这样,对于要检索的汉字只需要检查它的内码位于哪一个首字符的范围内,就可以推断出它的拼音首字符。
程序更简洁,包括3个控件:一个列表存放着全部待检索的信息;一个列表用于存放检索后的信息;一个编辑框用于输入检索关键字(即拼音首字符序列)。具体如下:
1.进入Delphi创立一个新工程:Project1
2.在Form1上创立以下控件并填写属性:
控件类型属性名称属性值
EditNameSearch
ListBoxNameSourceList
Items输入一些字符串,如姓名等,用于供应检索数据
ListBoxNameResultList
3.键入以下两个函数
//猎取指定汉字的拼音索引字母,如:“汉”的索引字母是“H”
functionGetPYIndexChar(hzchar:string):char;
begin
caseWORD(hzchar[1])shl8+WORD(hzchar[2])of
$B0A1..$B0C4:result:=”A”;
$B0C5..$B2C0:result:=”B”;
$B2C1..$B4ED:result:=”C”;
$B4EE..$B6E9:result:=”D”;
$B6EA..$B7A1:result:=”E”;
$B7A2..$B8C0:result:=”F”;
$B8C1..$B9FD:result:=”G”;
$B9FE..$BBF6:result:=”H”;
$BBF7..$BFA5:result:=”J”;
$BFA6..$C0AB:result:=”K”;
$C0AC..$C2E7:result:=”L”;
$C2E8..$C4C2:result:=”M”;
$C4C3..$C5B5:result:=”N”;
$C5B6..$C5BD:result:=”O”;
$C5BE..$C6D9:result:=”P”;
$C6DA..$C8BA:result:=”Q”;
$C8BB..$C8F5:result:=”R”;
$C8F6..$CBF9:result:=”S”;
$CBFA..$CDD9:result:=”T”;
$CDDA..$CEF3:result:=”W”;
$CEF4..$D188:result:=”X”;
$D1B9..$D4D0:result:=”Y”;
$D4D1..$D7F9:result:=”Z”;
else
result:=char(0);
end;
end;
//在指定的字符串列表SourceStrs中检索符合拼音索引字符串
PYIndexStr的全部字符串,并返回。
functionSearchByPYIndexStr
(SourceStrs:TStrings;
PYIndexStr:string):string;
labelNotFound;
var
i,j:integer;
hzchar:string;
begin
fori:=0toSourceStrs.Count-1do
begin
forj:=1toLength(PYIndexStr)do
begin
hzchar:=SourceStrs[i][2*j-1]
+SourceStrs[i][2*j];
if(PYIndexStr[j]'?')and
(UpperCase(PYIndexStr[j])
GetPYIndexChar(hzchar))thengotoNotFound;
end;
ifresult=””thenresult:=SourceStrs[i]
elseresult:=result+Char
(13)+SourceStrs[i];
NotFound:
end;
end;
4.增加编辑框Search的OnChange大事:
procedureTForm1.SearchChange(Sender:TObject);
varResultStr:string;
begin
ResultStr:=””;
ResultList.Items.Text:=SearchByPYIndexStr
(Sourcelist.Items,Search.Text);
end;
5.编译运行后
在编辑框Search中输入要查询
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度变更离婚协议书后子女探望权安排合同
- 2024年度技术开发合同:新能源动力装置的研发与技术共享协议
- 04版技术研发与转让合同:某科研机构与科技公司之间的合同
- 2024年度教育培训服务与课程定制合同
- 2024年度新能源发电设备采购与安装合同
- 脚踏车支架市场发展现状调查及供需格局分析预测报告
- 2024年度医疗设备购买与维护服务合同
- 掷环游戏用铁圈市场发展现状调查及供需格局分析预测报告
- 2024年度物业服务合同服务质量保证
- 贵金属及其合金制塑像市场需求与消费特点分析
- 2024-2030年全球及中国睡眠无创呼吸机行业需求形势及应用前景预测报告
- 从业人员健康管理管理制度
- 智慧旅游景区建设规划方案
- 代办消防验收合同范本共22024年
- 福建省漳州市十校联盟2024-2025学年高一上学期11月期中考试 数学 含解析
- 电缆隧道施工合同
- 2023年中考英语模拟卷(河南专用)(原卷版)
- 云盘web客户端用户使用手册
- 2023年曲靖市中医医院招聘考试真题
- 吉林省松原市前郭县南部学区2024~2025学年度七年级上期中测试.名校调研 生物(含答案)
- 2024年盘锦北方沥青股份限公司招聘18人高频难、易错点500题模拟试题附带答案详解
评论
0/150
提交评论