摘抄Excel和FoxPro獲取漢字拼音首字母縮寫的方法.
(1)Excel
Function hztopy(hzpy As String) As String
Dim hzstring As String, pystring As String
Dim hzpysum As Integer, hzi As Integer, hzpyhex As Integer
hzstring = Trim(hzpy)
hzpysum = Len(Trim(hzstring))
pystring = ""
For hzi = 1 To hzpysum
hzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))
Select Case hzpyhex
Case &HB0A1 To &HB0C4: pystring = pystring + "A"
Case &HB0C5 To &HB2C0: pystring = pystring + "B"
Case &HB2C1 To &HB4ED: pystring = pystring + "C"
Case &HB4EE To &HB6E9: pystring = pystring + "D"
Case &HB6EA To &HB7A1: pystring = pystring + "E"
Case &HB7A2 To &HB8C0: pystring = pystring + "F"
Case &HB8C1 To &HB9FD: pystring = pystring + "G"
Case &HB9FE To &HBBF6: pystring = pystring + "H"
Case &HBBF7 To &HBFA5: pystring = pystring + "J"
Case &HBFA6 To &HC0AB: pystring = pystring + "K"
Case &HC0AC To &HC2E7: pystring = pystring + "L"
Case &HC2E8 To &HC4C2: pystring = pystring + "M"
Case &HC4C3 To &HC5B5: pystring = pystring + "N"
Case &HC5B6 To &HC5BD: pystring = pystring + "O"
Case &HC5BE To &HC6D9: pystring = pystring + "P"
Case &HC6DA To &HC8BA: pystring = pystring + "Q"
Case &HC8BB To &HC8F5: pystring = pystring + "R"
Case &HC8F6 To &HCBF9: pystring = pystring + "S"
Case &HCBFA To &HCDD9: pystring = pystring + "T"
Case &HEDC5: pystring = pystring + "T"
Case &HCDDA To &HCEF3: pystring = pystring + "W"
Case &HCEF4 To &HD1B8: pystring = pystring + "X"
Case &HD1B9 To &HD4D0: pystring = pystring + "Y"
Case &HD4D1 To &HD7F9: pystring = pystring + "Z"
Case Else
pystring = pystring + Mid(hzstring, hzi, 1)
End Select
Next
hztopy = pystring
End Function
(2)FoxPro
case asc(s)>=asc('啊').and.asc(s)
case asc(s)>=asc('芭').and.asc(s)
case asc(s)>=asc('擦').and.asc(s)
case asc(s)>=asc('搭').and.asc(s)
case asc(s)>=asc('蛾').and.asc(s)
case asc(s)>=asc('發').and.asc(s)
case asc(s)>=asc('噶').and.asc(s)
case asc(s)>=asc('哈').and.asc(s)
case asc(s)>=asc('擊').and.asc(s)
case asc(s)>=asc('喀').and.asc(s)
case asc(s)>=asc('垃').and.asc(s)
case asc(s)>=asc('媽').and.asc(s)
case asc(s)>=asc('拿').and.asc(s)
case asc(s)>=asc('哦').and.asc(s)
case asc(s)>=asc('啪').and.asc(s)
case asc(s)>=asc('期').and.asc(s)
case asc(s)>=asc('然').and.asc(s)
case asc(s)>=asc('撒').and.asc(s)
case asc(s)>=asc('塌').and.asc(s)
case asc(s)>=asc('挖').and.asc(s)
case asc(s)>=asc('昔').and.asc(s)
case asc(s)>=asc('壓').and.asc(s)
case asc(s)>=asc('匝').and.s not='馨'.and.s not='煒'.and.s not='剴'.and.s not='翩'.and.s not='懿'
p_=p_+'z'
說明一下,兩種方法對於國標區位碼16-55區(以音序排列,上半區)適用.而對於56-87區(以部首排列,下半區)的漢字,則不適用.
這也正是方法中出現了若干or條件,將不滿足區位碼上半區音序排列的分界字元原則的漢字予以單獨羅列的原因.其實如果知道了區位碼的編碼原則,這種or是羅列不盡的.
理想的獲取方法,還是需要使用資料庫的排序規則(MS SQL Server)或者字符集排序特性(Oracle).
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29512902/viewspace-1416001/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在Excel中如何獲取漢字拼音首字母?Excel
- php獲取漢字的拼音 拼音首字母PHP
- [轉]SQL獲取漢字拼音首字母函式SQL函式
- 在vc中實現獲取漢字拼音的首字母
- 取漢字的拼音首字母的SQL函式SQL函式
- mysql獲取漢字的首字母MySql
- java獲取漢字的首字母Java
- 如何獲取漢字拼音首字母?一般用於通訊錄
- 簡單方法在C#中取得漢字的拼音的首字母(轉)C#
- iOS漢字轉拼音的方法iOS
- 用Oracle的NLSSORT獲取拼音首字母Oracle
- ORACLE SQL函式中文漢字轉拼音首字母OracleSQL函式
- oralce中漢字轉為拼音首字母的函式(轉)函式
- C# 漢字轉拼音 使用微軟的Visual Studio International Pack 類庫提取漢字拼音首字母C#微軟
- 獲取漢字串的拼音助記碼字串
- C# 獲取漢字首字母C#
- DB2中建立漢字拼音首字母的SQL函式DB2SQL函式
- C#中取得漢語拼音首字母C#
- .Net(C#)獲取漢字聲母的方法C#
- Sql Server資料庫漢字按字母、筆劃、拼音首字母、排序SQLServer資料庫排序
- C#漢字轉漢語拼音C#
- 直播原始碼開發,vue漢字獲取字母首拼或拼音、大小寫原始碼Vue
- JS 漢字轉換拼音JS
- 漢字轉拼音pl/sqlSQL
- python返回漢字的首字母Python
- mssql sqlserver 獲取指定漢字的筆畫數的方法分享SQLServer
- Excel表格如何按漢字的筆畫排序?Excel表格按漢字的筆畫排序的方法Excel排序
- C#漢字拼音檢索C#
- C#中漢字轉拼音C#
- js 漢字按照拼音排序效果JS排序
- 漢字之美,拼音之韻
- Python 漢字轉拼音的庫--- PyPinyinPython
- JavaScript按照漢字拼音順序排序JavaScript排序
- js漢字轉換為拼音功能JS
- JavaPinyin4j(漢字轉拼音)JavaAPI
- php 漢字轉換成拼音 程式PHP
- xpinyin:漢字轉換為拼音庫
- js 漢字陣列按拼音排序JS陣列排序