提取漢字拼音的首字母

2022-01-30 18:00:16 字數 1128 閱讀 4613

這個能取大部分漢字的首字母, 但還不全, 有些unicode的漢字是取不到的, 要想取到所有漢字的首字母,最好是能做乙個unicode漢字和拼音的對照表,通過對照表查.

gb2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個;同時,gb2312收錄了包括拉丁字母、希臘字母、日文平假名及片假名字母、俄羅斯語西里爾字母在內的682個全形字符。           

gb2312的出現,基本滿足了漢字的計算機處理需要,它所收錄的漢字已經覆蓋99.75%的使用頻率。gb2312中對所收漢字進行了「分割槽」處理,每區含有94個漢字/符號。這種表示方式也稱為區位碼。          

01-09區為特殊符號。          

16-55區為一級漢字,按拼音排序。           

56-87區為二級漢字,按部首/筆畫排序。          

10-15區及88-94區則未有編碼。        

舉例來說,「啊」字是gb2312之中的第乙個漢字,它的區位碼就是1601。位元組結構在使用gb2312的程式中,通常採用euc儲存方法,以便相容於ascii。每個漢字及符號以兩個位元組來表示。第乙個位元組稱為「高位位元組」,第二個位元組稱為「低位位元組」。 「高位位元組」使用了0xa1-0xf7(把01-87區的區號加上0xa0),「低位位元組」使用了0xa1-0xfe(把01-94加上0xa0)。例如「啊」字在大多數程式中,會以0xb0a1儲存。(與區位碼對比:0xb0=0xa0+16,0xa1=0xa0+1)。        

所以gb2312編碼中漢字區碼的十進位制是從176到247,位碼是從161到255.之所以儲存了6763小於82*94=6768,是因為在區碼為215,位碼為250-254之間共五個編碼沒有漢字編碼,所以6768-5=6763個。

public

string getfirstletter(string

hz)

else

if (array[0] >= 176 && array[0] <= 215) //

一級漢字

else

if (array[0] >= 215) //

二級漢字

}return

return_py.toupper();

}

提取漢字拼音的首字母

這個能取大部分漢字的首字母,但還不全,有些unicode的漢字是取不到的,要想取到所有漢字的首字母,最好是能做乙個unicode漢字和拼音的對照表,通過對照表查.gb2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個 同時,gb2312收錄了包括拉丁字母 希臘字母 日文平假...

漢字提取拼音首字母修正

using system using system.collections.generic using system.linq using system.text namespace getcnspell return mystr 把提取的字母變成小寫 需要轉換的字串 轉換結果 public str...

漢字提取首字母

public class getcnspell return mystr 把提取的字母變成小寫 需要轉換的字串 轉換結果 public string getlowerchinesespell string strtext 把提取的字母變成大寫 需要轉換的字串 轉換結果 public string g...