Re: [問題] 一個奇怪的漢字編碼問題(Unihan?)

看板Perl作者 (啊)時間8年前 (2015/09/16 07:04), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/5 (看更多)
※ 引述《flu (Crazy Rhythm)》之銘言: : 雜想: : 1. 有些網站能查詢某個字的其他code point,像是「行」的三個 : 沒有詳細去看是否有另外提供列表下載 (這一點前封回章已經回應) : 2. 如果加入了unicode的特性——可以兩個字合成一個新字 : 比如說 U+328E (圈起來的金) 假設可以由 〇+金 組起來的話 : 〇先不談,由於金也出現在上述B的三個表內 : 會處理這些字的場合又會複雜一點 U+328E 的「〇金」與 U+091D1 的「金」,在「字意」上通常指涉不同實物, 多半不必視為同樣。私以為忽略便可。 如果是組字專用的碼位,其名稱都會有 "COMBINING" 這個字,而且實際上在檔案中都 會是兩個碼位,所以其實很好處理。可以使用 "uni" 來找到所有 COMBINING 碼位: https://metacpan.org/pod/App::Uni 使用方法如: > uni COMBINING - U+00300 - COMBINING GRAVE ACCENT - U+00301 - COMBINING ACUTE ACCENT - U+00302 - COMBINING CIRCUMFLEX ACCENT - U+00303 - COMBINING TILDE .... 也可以直接打字: > uni 金 金- U+091D1 - CJK UNIFIED IDEOGRAPH-91D1 配合 charnames::viacode, ord 等函試,也可自行在程式中取得該碼位在 Unicode 標準中的「名字」: > perl -Mcharnames=:full -E 'say charnames::viacode("91D1")' CJK UNIFIED IDEOGRAPH-91D1 > perl -Mutf8 -Mcharnames=:full -E 'say charnames::viacode(ord("金"))' CJK UNIFIED IDEOGRAPH-91D1 也就是說工具都有了,要把組合專用的碼位除掉,其實頂容易的。 : 3. 這算是漢字在unicode議題上的normalization議題嗎? : *1 https://en.wikipedia.org/wiki/Kangxi_radical#Unicode : *2 列表在 http://www.unicode.org/charts/beta/normalization/index.html : 有在持續更新的unicode說明的站(日文) : http://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/index_u.html 視用途了... 繁簡轉換及 z variant 比較像是 normalization 議題。 但通常是在搜尋這個領域的應用才比較需要。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 77.163.137.207 ※ 文章網址: https://www.ptt.cc/bbs/Perl/M.1442358240.A.187.html

09/16 18:29, , 1F
長知識了~~
09/16 18:29, 1F
文章代碼(AID): #1L-AFW67 (Perl)
討論串 (同標題文章)
文章代碼(AID): #1L-AFW67 (Perl)