Class: CBETA::Gaiji

Inherits:
Object
  • Object
show all
Defined in:
lib/cbeta/gaiji.rb

Overview

存取 CBETA 缺字資料庫

Instance Method Summary collapse

Constructor Details

#initializeGaiji

載入 CBETA 缺字資料庫



6
7
8
9
# File 'lib/cbeta/gaiji.rb', line 6

def initialize()
  fn = File.join(File.dirname(__FILE__), 'gaiji.json')
  @gaijis = JSON.parse(File.read(fn))
end

Instance Method Details

#[](cb) ⇒ Hash{String => Strin, Array<String>}?

傳入,傳回 hash 缺字資訊

Return:

{
  "zzs": "[得-彳]",
  "unicode": "3775",
  "unicode-char": "",
  "zhuyin": [ "ㄉㄜˊ", "ㄞˋ" ]
}

Examples:

g = Cbeta::Gaiji.new
g["CB01002"]

Parameters:

  • cb (String)

    缺字 CB 碼

Returns:

  • (Hash{String => Strin, Array<String>})

    缺字資訊

  • (nil)

    如果該 CB 碼在 CBETA 缺字庫中不存在



28
29
30
# File 'lib/cbeta/gaiji.rb', line 28

def [](cb)
	@gaijis[cb]
end

#zhuyin(cb) ⇒ Array<String>

傳入缺字 CB 碼,傳回注音 array

Examples:

g = Cbeta::Gaiji.new
g.zhuyin("CB00023") # return [ "ㄍㄢˇ", "ㄍㄢ", "ㄧㄤˊ", "ㄇㄧˇ", "ㄇㄧㄝ", "ㄒㄧㄤˊ" ]

Parameters:

  • cb (String)

    缺字 CB 碼

Returns:

  • (Array<String>)


40
41
42
43
# File 'lib/cbeta/gaiji.rb', line 40

def zhuyin(cb)
	return nil unless @gaijis.key? cb
  @gaijis[cb]['zhuyin']
end