支持delphi6至delphi xe7,支持汉字、生僻字、中文简体、中文繁体、gbk,gb2312,unicode,utf8转为拼音,亲测有效。
//获取指定汉字的拼音索引字母,如:汉 = h。多音字返回多个声母,如:行 = hx
function GetPYIndex(const OneWord: String; const OnlyOne: Boolean = False): String;
//获取指定字符串的拼音索引字母(多音字总是取第一个音的声母)。如:中山大学 = zsdx
function GetStrPYIndex(const Str: String): String;
//获取字符串Str中与拼音声母字符串PYStr匹配的起始位置。如:PosPY('zsdx','我来自中山大学'),在Unicode环境中返回4,非Unicode环境返回7
function PosPY(const PYStr, Str: String): Integer;
//判断字符串Str的拼音声母是否全部与PYStr相同。如:SamePY('zsdx', '中山大学') = True
function SamePY(const PYStr, Str: String): Boolean;
//获取字符串Str中拼音声母串与字符串SubStr拼音声母串匹配的起始位置。如:PosTextPY('纵声大笑', '我来自中山大学'),在Unicode环境中返回4,非Unicode环境返回7
function PosTextPY(const SubStr, Str: String): Integer;
//判断字符串Str的拼音声母是否全部与字符串SubStr的拼音声母相同。如:SameTextPY('纵声大笑', '中山大学') = True
function SameTextPY(const SubStr, Str: String): Boolean;