请问:如何用拼音调出汉字

leetow2006 2018-04-16 01:21:55
在我的mysql的一个表中,有很多用汉字存储的单位名称,
现在在输入单位名称时,如果取查找很麻烦,我想是否
可以用每个汉字的头拼音来调出单位名称,比如:
福州闽江,我只要输入每个汉字的第一个拼音就可以
调出,即:fzmj,请问如何用javascript来写代码?
怎么做呢?(我的程序是php+mysql)
...全文
1232 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
leetow2006 2018-04-18
  • 打赏
  • 举报
回复
我希望的代码是输入拼音就能获取相应的汉字,请问该怎么做?
Hello World, 2018-04-17
  • 打赏
  • 举报
回复
/*创建取拼音首字母函数*/ 
CREATE FUNCTION [dbo].[fn_ChineseToSpell]
    (
      @strChinese VARCHAR(500) = ''
    )
RETURNS VARCHAR(500)
AS
    BEGIN /*函数实现开始*/ 
        DECLARE @strLen INT ,
            @return VARCHAR(500) ,
            @i INT; 
        DECLARE @n INT ,
            @c CHAR(1) ,
            @chn NCHAR(1);  
        SELECT  @strLen = LEN(@strChinese) ,
                @return = '' ,
                @i = 0; 
        WHILE @i < @strLen
            BEGIN /*while循环开始*/
                SELECT  @i = @i + 1 ,
                        @n = 63 ,
                        @chn = SUBSTRING(@strChinese, @i, 1); 
                IF @chn > 'z'/*原理:“字符串排序以及ASCII码表”*/
                    SELECT  @n = @n + 1 ,
                            @c = CASE chn
                                   WHEN @chn THEN CHAR(@n)
                                   ELSE @c
                                 END
                    FROM    ( SELECT TOP 27
                                        *
                              FROM      ( SELECT    chn = '吖'
                                          UNION ALL
                                          SELECT    '八'
                                          UNION ALL
                                          SELECT    '嚓'
                                          UNION ALL
                                          SELECT    '咑'
                                          UNION ALL
                                          SELECT    '妸'
                                          UNION ALL
                                          SELECT    '发'
                                          UNION ALL
                                          SELECT    '旮'
                                          UNION ALL
                                          SELECT    '铪'
                                          UNION ALL
                                          SELECT    '丌' /*because have no 'i'*/
                                          UNION ALL
                                          SELECT    '丌'
                                          UNION ALL
                                          SELECT    '咔'
                                          UNION ALL
                                          SELECT    '垃'
                                          UNION ALL
                                          SELECT    '嘸'
                                          UNION ALL
                                          SELECT    '拏'
                                          UNION ALL
                                          SELECT    '噢'
                                          UNION ALL
                                          SELECT    '妑'
                                          UNION ALL
                                          SELECT    '七'
                                          UNION ALL
                                          SELECT    '呥'
                                          UNION ALL
                                          SELECT    '仨'
                                          UNION ALL
                                          SELECT    '他'
                                          UNION ALL
                                          SELECT    '屲' /*no 'u'*/
                                          UNION ALL
                                          SELECT    '屲' /*no 'v'*/
                                          UNION ALL
                                          SELECT    '屲'
                                          UNION ALL
                                          SELECT    '夕'
                                          UNION ALL
                                          SELECT    '丫'
                                          UNION ALL
                                          SELECT    '帀'
                                          UNION ALL
                                          SELECT    @chn
                                        ) AS a
                              ORDER BY  chn COLLATE Chinese_PRC_CI_AS
                            ) AS b;  
                ELSE
                    SET @c = @chn;
                SET @return = @return + @c;  
            END; /*while循环结束*/  
        RETURN(@return);  
    END; /*函数实现结束*/    
leetow2006 2018-04-17
  • 打赏
  • 举报
回复
引用 4 楼 usecf 的回复:
你建一个汉字的 一个拼音的 用拼音和汉字组合查询 找到那个就是那个
有没有相关代码?
极客诗人 2018-04-17
  • 打赏
  • 举报
回复
当然我的建议是你可以将你的fzmj 进行一个关于简称的字段 在单位存储的时候讲拼音简称存储 然后进行匹配验证 我想这应该能符合你的需求
极客诗人 2018-04-17
  • 打赏
  • 举报
回复
当然 目前你的需求是与我上方说的刚好相反 但是我认为是可以实现 不过工作量较大
极客诗人 2018-04-17
  • 打赏
  • 举报
回复
我记着网上有这方面封装好的方法 以前做简称的时候做个 比如 北京:bj 我是罗明小跟班 :wslmxgb 会实现以上效果
usecf 2018-04-17
  • 打赏
  • 举报
回复
你建一个汉字的 一个拼音的 用拼音和汉字组合查询 找到那个就是那个
leetow2006 2018-04-17
  • 打赏
  • 举报
回复
引用 1 楼 usecf 的回复:
那你为什么不在数据库中多建一个拼音的字段 这样操作不更方便
如果建一个拼音的字段,那么如何能快速匹配汉字呢?用什么办法解决?
Zerolone 2018-04-16
  • 打赏
  • 举报
回复
楼上正解,,,,
usecf 2018-04-16
  • 打赏
  • 举报
回复
那你为什么不在数据库中多建一个拼音的字段 这样操作不更方便

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧