PHP漢字轉換為拼音字頭原理

2022-03-14 16:03:13 字數 880 閱讀 5016

gb 2312中對所收漢字進行了「分割槽」處理,每區含有94個漢字/符號。這種表示方式也稱為區位碼。

1)01-09區為特殊符號。

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

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

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

在使用gb2312的程式中,通常採用euc儲存方法,以便相容於ascii。瀏覽器編碼表上的「gb2312」,通常都是指「euc-cn」表示法。

每個漢字及符號以兩個位元組來表示。第乙個位元組稱為「高位位元組」(也稱「區位元組)」,第二個位元組稱為「低位位元組」(也稱「位位元組」)。

「高位位元組」使用了0xa1-0xf7(把01-87區的區號加上0xa0),「低位位元組」使用了0xa1-0xfe(把01-94加上 0xa0)。由於一級漢字從16區起始,漢字區的「高位位元組」的範圍是0xb0-0xf7,「低位位元組」的範圍是0xa1-0xfe,占用的碼位是 72*94=6768。其中有5個空位是d7fa-d7fe。

例如「啊」字在大多數程式中,會以兩個位元組,0xb0(第乙個位元組) 0xa1(第二個位元組)儲存。區位碼=區位元組+位位元組(與區位碼對比:0xb0=0xa0+16,0xa1=0xa0+1)。

設計:用乙個陣列存放國標一級漢字不同讀音的起始區位碼 :如

static final int secposvaluelist = ;   

乙個資料存放存放國標一級漢字不同讀音的起始區位碼對應讀音 

static final char firstletter = ;   

處理方法:

1. 判斷是否為英文之母

2. 如果是,直接返回英文之母

3. 取字元的編碼值

4. 比較判斷其編碼值在碼表中的位置。

5. 根據位置值,返回之母表中相應值

php將漢字轉換為拼音

漢字轉化為拼音類 class pinyin 漢字轉化並輸出拼音 param string str 所要轉化拼音的漢字 param boolean utf8 漢字編碼是否為utf8 return string public function output str,utf8 true 編碼轉換.str ...

python漢字轉換為拼音

使用pypinyin包 pip install pypinyin from pypinyin import pinyin,normal 將漢字轉換為拼音,pinyin 轉換後是列表,不加style轉換後帶聲調 pos 1 for piny in pinyin self.name,style norm...

sql函式 漢字轉換為拼音

sql資料庫 自定義乙個函式 把下面 寫進去 功能是得到漢字拼音首字母 如下 create function fun getpy str nvarchar 4000 returns nvarchar 4000 asbegin declare word nchar 1 py nvarchar 4000...