zoukankan      html  css  js  c++  java
  • C#&Sql获取中文字符拼音首字母的方法

    C#获取字符拼音首字母,可以存储在数据库中以备将来按字母搜索的需求。

    public static string GetAc(string s)
    {
    try
    {
    string temp = Service.Text.Chinese2Spell.MakeSpellCode(s, Service.Text.SpellOptions.EnableUnicodeLetter).ToUpper();
    if (temp.Length > 0)
    return temp.Substring(0, 1);
    return temp;
    }
    catch
    {
    return "";
    }
    }

    sql端进行处理

    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 /*函数实现结束*/
    --调用
    select dbo.[fn_ChineseToSpell]('你好')
  • 相关阅读:
    加油 ^_^
    ES6 小记
    Angular2 初学小记
    Round 4
    react中iconfont字体图标不显示问题
    react 实现组件嵌套以及子组件与父组件之间的通信
    wamp&花生壳 在本地搭建自己的网站
    深入浅出CSS(二):关于雪碧图、background-position与steps函数的三角恋情
    深入浅出CSS(一):line-height与vertical-align的性质
    十进制字符编号
  • 原文地址:https://www.cnblogs.com/huhangfei/p/4991765.html
Copyright © 2011-2022 走看看