Mac
brew install mecab mecab-ipadic
export CGO_LDFLAGS="`mecab-config --libs`"
export CGO_CFLAGS="-I`mecab-config --inc-dir`"
go get -u github.com/shogo82148/go-mecab
Linux
yum install mecab mecab-ipadic mecab-devel
export CGO_LDFLAGS="`mecab-config --libs`"
export CGO_CFLAGS="-I`mecab-config --inc-dir`"
Usage
mecab 输入内容回车
指定输入输出文件
mecab input.txt -o output.txt
Format
小野さん,今日はしっかり食べておいてください。明日からハードスケジュールで,あちこち行きますからね。
tagger, _ := mecab.New(map[string]string{"output-format-type": "wakati"})
tagger, _ := mecab.New(map[string]string{"output-format-type": "wakati"})
defer tagger.Destroy()
format := c.FormValue("format")
if format == "lattice" {
lattice, _ := mecab.NewLattice()
defer lattice.Destroy()
lattice.SetSentence(c.FormValue("sentence"))
_ = tagger.ParseLattice(lattice)
r := lattice.String()
return util.Success(c, strings.Split(r, "\n"))
}
result, _ := tagger.Parse(c.FormValue("sentence"))
return util.Success(c, strings.Split(result, "\n"))
//lattice 换行区分
[
"小野\t名詞,固有名詞,人名,姓,*,*,小野,オノ,オノ",
"さん\t名詞,接尾,人名,*,*,*,さん,サン,サン",
",\t記号,読点,*,*,*,*,,,,,,",
"今日\t名詞,副詞可能,*,*,*,*,今日,キョウ,キョー",
"は\t助詞,係助詞,*,*,*,*,は,ハ,ワ",
"しっかり\t副詞,助詞類接続,*,*,*,*,しっかり,シッカリ,シッカリ",
"食べ\t動詞,自立,*,*,一段,連用形,食べる,タベ,タベ",
"て\t助詞,接続助詞,*,*,*,*,て,テ,テ",
"おい\t動詞,非自立,*,*,五段・カ行イ音便,連用タ接続,おく,オイ,オイ",
"て\t助詞,接続助詞,*,*,*,*,て,テ,テ",
"ください\t動詞,非自立,*,*,五段・ラ行特殊,命令i,くださる,クダサイ,クダサイ",
"。\t記号,句点,*,*,*,*,。,。,。",
"明日\t名詞,副詞可能,*,*,*,*,明日,アシタ,アシタ",
"から\t助詞,格助詞,一般,*,*,*,から,カラ,カラ",
"ハード\t名詞,固有名詞,人名,姓,*,*,ハード,ハード,ハード",
"スケジュール\t名詞,一般,*,*,*,*,スケジュール,スケジュール,スケジュール",
"で\t助詞,格助詞,一般,*,*,*,で,デ,デ",
",\t記号,読点,*,*,*,*,,,,,,",
"あちこち\t名詞,代名詞,一般,*,*,*,あちこち,アチコチ,アチコチ",
"行き\t動詞,自立,*,*,五段・カ行促音便,連用形,行く,イキ,イキ",
"ます\t助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス",
"から\t助詞,接続助詞,*,*,*,*,から,カラ,カラ",
"ね\t助詞,終助詞,*,*,*,*,ね,ネ,ネ",
"。\t記号,句点,*,*,*,*,。,。,。",
"EOS",
""
]
//normal 空格区分
[
"小野 さん , 今日 は しっかり 食べ て おい て ください 。 明日 から ハード スケジュール で , あちこち 行き ます から ね 。 ",
""
]