由於乙個公司的oa上用到速查編碼,必須得到每個字的首字母,便於以後的查詢(如:開發部,則為kfb),到網上找到了一些資料,是乙個儲存過程。
儲存過程為:
create proc log_findcode
@strname nvarchar(20),
@strfindcode nvarchar(20) output
as begin
declare @word nchar(1),@py nvarchar(4000)
set @py=''
while len(@strname)>0
begin
set @word=left(@strname,1)
set @py=@py+(case when unicode(@word) between 19968 and 19968+20901
then (select top 1 py from (
select 'a' as py,n'驁' as word
union all select 'b',n'簿'
union all select 'c',n'錯'
union all select 'd',n'鵽'
union all select 'e',n'樲'
union all select 'f',n'鰒'
union all select 'g',n'腂'
union all select 'h',n'夻'
union all select 'j',n'攈'
union all select 'k',n'穒'
union all select 'l',n'鱳'
union all select 'm',n'旀'
union all select 'n',n'桛'
union all select 'o',n'漚'
union all select 'p',n'曝'
union all select 'q',n'囕'
union all select 'r',n'鶸'
union all select 's',n'蜶'
union all select 't',n'籜'
union all select 'w',n'鶩'
union all select 'x',n'鑂'
union all select 'y',n'韻'
union all select 'z',n'咗'
) t
where word>=@word collate chinese_prc_cs_as_ks_ws
order by py asc) else @word end)
set @strname=right(@strname,len(@strname)-1)
end
set @strfindcode=@py
end
下面是把漢語傳入,呼叫儲存過程得到速查編碼的方法
public string getpy(string name)//得到速查編碼
取得一段漢語的每個字的首字母
由於乙個公司的oa上用到速查編碼,必須得到每個字的首字母,便於以後的查詢 如 開發部,則為kfb 到網上找到了一些資料,是乙個儲存過程。儲存過程為 create proc log findcode strname nvarchar 20 strfindcode nvarchar 20 output ...
C 取得漢字的拼音的首字母。
今天在yyf9989 的 blog 上看到一篇 c 計算漢語拼音碼 看了裡面的 覺得是比較繁瑣。它主要是檢索輸入的漢字在陣列中的位置,然後返回第乙個字母。於是就想起來了,可以利用漢字在計算機裡面的編碼來的到漢字的首拼音,查詢了一些資料,通過以下的方法成功的得到了解決。就放在這裡,請朋友們參考。sta...
分享一段PHP製作的中文拼音首字母工具類
很簡單,這裡就不多bb了,大家看注釋吧,注釋都看不懂的小夥伴,求放過php!複製 如下 漢字拼音首字母工具類 注 英文的字串 不變返回 包括數字 eg abc123 abc123 中文字串 返回拼音首字元 eg.測試字串 cszfc 中英混合串 返回拼音首字元和英文 eg.我i我j wiwj eg....