Class: Kuromoji::Core
- Inherits:
-
Object
- Object
- Kuromoji::Core
- Defined in:
- lib/kuromoji/core.rb
Instance Method Summary collapse
-
#initialize(user_dictionary = nil) ⇒ Core
constructor
A new instance of Core.
- #process(method, sentence) ⇒ Object
- #reading(sentence) ⇒ Object
- #tokenize(sentence) ⇒ Object
- #tokenize_with_hash(sentence) ⇒ Object
Constructor Details
#initialize(user_dictionary = nil) ⇒ Core
Returns a new instance of Core.
21 22 23 24 25 26 27 28 29 |
# File 'lib/kuromoji/core.rb', line 21 def initialize(user_dictionary = nil) jar = File.('../../../vendor/kuromoji-0.7.7/lib/kuromoji-0.7.7.jar', __FILE__) Rjb.load(jar) if user_dictionary.nil? @tokenizer = Rjb.import('org.atilika.kuromoji.Tokenizer').builder.build else @tokenizer = Rjb.import('org.atilika.kuromoji.Tokenizer').builder.userDictionary(user_dictionary).build end end |
Instance Method Details
#process(method, sentence) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/kuromoji/core.rb', line 51 def process(method, sentence) tokenized = {} return tokenized if sentence.nil? list = @tokenizer.tokenize(sentence) iterator = list.iterator while iterator.has_next item = iterator.next tokenized[item.surface_form] = item.send(method) end tokenized end |
#reading(sentence) ⇒ Object
35 36 37 |
# File 'lib/kuromoji/core.rb', line 35 def reading(sentence) process(:getReading, sentence) end |
#tokenize(sentence) ⇒ Object
31 32 33 |
# File 'lib/kuromoji/core.rb', line 31 def tokenize(sentence) process(:all_features, sentence) end |
#tokenize_with_hash(sentence) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/kuromoji/core.rb', line 39 def tokenize_with_hash(sentence) result = [] return result if sentence.nil? list = @tokenizer.tokenize(sentence) iterator = list.iterator while iterator.has_next item = iterator.next result << item.to_kuromoji_hash end result end |