Ruby interface to twitter-korean-text by Twitter
트위터에서 제공하는 한글 형태소 분석기인 twitter-korean-text(Scala)를 Ruby에서 사용가능하도록 Wrapping 하였습니다.
twitter-korean-text 4.4 버젼을 바탕으로 만들어졌습니다.
$ gem install twitter-korean-text-ruby
Gemfile을 사용할 경우
# Gemfile
gem 'twitter-korean-text-ruby'
require 'twitter-korean-text-ruby'
processor = TwitterKorean::Processor.new
# OR with JVM arguments
processor = TwitterKorean::Processor.new('-Xms126M', '-Xmx512M', ...)
# Normalize
processor.normalize("형태소 분석을 합니닼ㅋㅋㅋㅋㅋㅋ")
# => "형태소 분석을 합니다ㅋㅋㅋㅋㅋㅋ"
# Tokenize
proccessor.tokenize("한국어를 처리하는 예시입니다 ㅋㅋ")
# => ["한국어", "를", " ", "처리", "하는", " ", "예시", "입니", "다", " ", "ㅋㅋ"]
# Stemming
proccessor.stem("한국어를 처리하는 예시입니다 ㅋㅋ")
# => ["한국어", "를", " ", "처리", "하다", " ", "예시", "이다", " ", "ㅋㅋ"]
# extract phrases
proccessor.stem("한국어를 처리하는 예시입니다 ㅋㅋ")
# => ["한국어", "처리", "처리하는 예시", "예시"]
토큰 클래스(TwitterKorean::KoreanToken
)는 String을 상속받아 만들었습니다. 토큰에 대한 메타정보는 metadata
attribute를 사용합니다.
tokens = proccessor.tokenize("한국어를 처리하는 예시입니다 ㅋㅋ")
token = tokens.first
token #=> 한국어
metadata = token.metadata
matadata #=> "noun, 0, 3"
metadata.pos #=> :noun
metadata.offset #=> 0
metadata.length #=> 3
rake test
JAVA_HOME Path를 찾지 못했을 경우,
export JAVA_HOME=$(java_home_path)
이 프로젝트는 twitter-korean-text 프로젝트의 Scala 코드를 Ruby로 Wrapping하는 프로젝트입니다. 관련된 범주에 대한 Issue와 Pull Request(테스트 코드가 포함된)는 언제나 환영입니다.