wandu/mecab

This package is abandoned and no longer maintained. No replacement package was suggested.

OOP Mecab Wrapper

v0.2.0 2016-12-04 15:30 UTC

This package is not auto-updated.

Last update: 2022-04-02 06:32:58 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads License

OOP Mecab Wrapper.

Installation

composer require wandu/mecab

How to use

Example 분석하기 parse, parseToString, parseToGenerator

<?php
use Wandu\Mecab\Mecab;

$mecab = new Mecab('/usr/local/lib/mecab/dic/mecab-ko-dic');

$mecab->parseToString('동해물과 백두산이 마르고 닳도록 하느님이 보우하사'); // return string

Result

BOS
NOD (NNP,지명,F,동해,*,*,*,*): 동해
NOD (NNG,*,T,물,*,*,*,*): 물
NOD (JC,*,F,과,*,*,*,*): 과
NOD (NNP,지명,T,백두산,Compound,*,*,백두/NNG/*+산/NNG/*): 백두산
NOD (JKS,*,F,이,*,*,*,*): 이
NOD (VV,*,F,마르,*,*,*,*): 마르
NOD (EC,*,F,고,*,*,*,*): 고
NOD (VV,*,T,닳,*,*,*,*): 닳
NOD (EC,*,T,도록,*,*,*,*): 도록
NOD (NNG,*,T,하느님,Compound,*,*,하느/NNG/*+님/NNG/*): 하느님
NOD (JKS,*,F,이,*,*,*,*): 이
NOD (NNG,*,F,보우,*,*,*,*): 보우
NOD (NNG,*,F,하사,*,*,*,*): 하사
EOS

Example 품사태그로 필터링하기

KoreaEunjeon의 태그는 여기에 잘 정리되어있습니다.

<?php
use Wandu\Mecab\Mecab;
use Wandu\Mecab\Node;
use Wandu\Mecab\Tag\KoreaEunjeon;

$mecab = new Mecab('/usr/local/lib/mecab/dic/mecab-ko-dic');

$nodes = array_filter($mecab->parse('동해물과 백두산이 마르고 닳도록 하느님이 보우하사'), function (Node $node) {
    return
        $node->hasTag(KoreaEunjeon::TAG_NNP) ||
        $node->hasTag(KoreaEunjeon::TAG_NNB) ||
        $node->hasTag(KoreaEunjeon::TAG_NNG);
});

Example 형태소로 분리하기 split

<?php
use Wandu\Mecab\Mecab;

$mecab = new Mecab('/usr/local/lib/mecab/dic/mecab-ko-dic');
$mecab->split('동해물과 백두산이 마르고 닳도록 하느님이 보우하사'); // return array

Result

[
    '동해',
    '물',
    '과',
    '백두산',
    '이',
    '마르',
    '고',
    '닳',
    '도록',
    '하느님',
    '이',
    '보우',
    '하사',
]

Reference