Skip to main content

Crate mecab_ko

Crate mecab_ko 

Source
Expand description

§mecab-ko

한국어 형태소 분석기 - MeCab-Ko의 순수 Rust 구현

§소개

mecab-ko는 한국어 형태소 분석을 위한 라이브러리입니다. 은전한닢(mecab-ko)의 순수 Rust 재구현으로, 빠르고 안전한 형태소 분석을 제공합니다.

§주요 특징

  • 순수 Rust: unsafe 코드 없이 메모리 안전성 보장
  • 한국어 최적화: 띄어쓰기 패널티, 한글 자모 처리
  • 고성능: Zero-copy 사전, 효율적인 Viterbi 구현
  • 유연성: 사용자 사전, 필터 시스템 지원

§빠른 시작

use mecab_ko::Tokenizer;

let mut tokenizer = Tokenizer::new().unwrap();

// 기본 형태소 분석
let tokens = tokenizer.tokenize("아버지가방에들어가신다");
for token in tokens {
    println!("{}\t{}", token.surface, token.pos);
}

// 분리만 (wakati)
let words = tokenizer.wakati("안녕하세요");
println!("{:?}", words);  // ["안녕", "하", "세요"]

// 명사만 추출
let nouns = tokenizer.nouns("오늘 날씨가 좋습니다");
println!("{:?}", nouns);  // ["오늘", "날씨"]

§모듈 구조

  • tokenizer: 형태소 분석 메인 인터페이스
  • pos_tag: 품사 태그 정의 (세종 품사 체계)
  • hangul: 한글 자모 처리 유틸리티
  • dict: 사전 로딩 및 검색

§Feature Flags

  • builder: 사전 빌더 기능 포함

Modules§

dict
형태소 사전
hangul
한글 자모 처리
pos_tag
품사 태그 정의
tokenizer
형태소 분석기

Structs§

Entry
사전 엔트리
Token
토큰
Tokenizer
토크나이저

Enums§

CharType
문자의 종류를 나타내는 열거형
Error
핵심 엔진 에러 타입
PosTag
품사 태그 (Part-of-Speech Tag)

Constants§

VERSION
버전 정보

Traits§

Dictionary
사전 인터페이스

Functions§

classify_char
문자의 종류를 판별합니다.
compose
초성, 중성, 종성을 결합하여 한글 음절을 만듭니다.
compose_str
자모 문자열을 한글 음절로 결합합니다.
decompose
한글 음절을 초성, 중성, 종성으로 분해합니다.
decompose_str
문자열의 모든 한글 음절을 자모로 분해합니다.
has_jongseong
주어진 한글 음절에 종성이 있는지 확인합니다.
is_hangul
주어진 문자가 한글(음절 또는 자모)인지 확인합니다.
is_hangul_syllable
주어진 문자가 한글 음절인지 확인합니다.
is_jamo
주어진 문자가 한글 자모인지 확인합니다.

Type Aliases§

Result
Result 타입 별칭