Japanese Morphological Analyzer Mecab on iPhone（Cocoa Static Library Version）
This is an application that integrates Mecab and allows it to be used on iOS.
Mecab is built as a Cocoa Touch Static Libarary.
Updated to work with Xcode 7 and iOS 9.
The sample app in LibMecabSample should build and run as configured in both the simulator and on devices.
You can implement Mecab from this repo into your own app using the following steps:
Manually copy the
mecabfolder over to your project folder. Select
Add Files to "yourProject"...from the Xcode menu and choose the
mecab.xcodeprojin the mecab folder you copied over. The project along with it's subfolders and all required classes will be added to your project tree.
Node.mfiles from the
LibMecabSamplefolder into your project, making sure to select
Copy items if needed.
Still in the LibMecabSample folder, drag the
ipadicfolder into your project; I recommend dragging it into the
Supporting Filesgroup to make sure it goes into your main bundle where mecab can find it. Again, be sure to select
Copy items if needed.
Go into your project's
Build Phases, look under
Compile Sourcesand add
Compiler Flagsfor both Mecab.h and Node.h.
Build Phases, add the following to
Link Binary With Libraries:
Under "Header Search Paths" in
Clean and build.
Special thanks to Joseph Toronto on Stack Overflow for coming up with these steps.
"Mecab.h" into your class. Allocate and initialize a new Mecab object and then supply it a string to parse via the
parseToNodeWithString method. It'll return an array of nodes that you can then manipulate as needed:
Mecab *mecab = [[Mecab alloc] init]; NSArray *results = [mecab parseToNodeWithString:@"すもももももももものうち"];
This would give you the following result:
すもも: 名詞,一般,*,*,*,*,すもも,スモモ,スモモ も: 助詞,係助詞,*,*,*,*,も,モ,モ もも: 名詞,一般,*,*,*,*,もも,モモ,モモ も: 助詞,係助詞,*,*,*,*,も,モ,モ もも: 名詞,一般,*,*,*,*,もも,モモ,モモ の: 助詞,連体化,*,*,*,*,の,ノ,ノ うち: 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
If you're planning to use this to present results to users, you'll probably need to write quite a bit of parsing code to put the nodes back together in a useful way since the nodes will be broken down into the smallest possible pieces.
A few examples:
欲し: 形容詞,自立,*,*,形容詞・イ段,ガル接続,欲しい,ホシ,ホシ がっ: 動詞,接尾,*,*,五段・ラ行,連用タ接続,がる,ガッ,ガッ て: 助詞,接続助詞,*,*,*,*,て,テ,テ い: 動詞,非自立,*,*,一段,連用形,いる,イ,イ た: 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
通っ: 動詞,自立,*,*,五段・ラ行,連用タ接続,通る,トオッ,トーッ た: 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ ん: 名詞,非自立,一般,*,*,*,ん,ン,ン だろ: 助動詞,*,*,*,特殊・ダ,未然形,だ,ダロ,ダロ う: 助動詞,*,*,*,不変化型,基本形,う,ウ,ウ な: 助詞,終助詞,*,*,*,*,な,ナ,ナ
光らせ: 動詞,自立,*,*,一段,連用形,光らせる,ヒカラセ,ヒカラセ て: 助詞,接続助詞,*,*,*,*,て,テ,テ おく: 動詞,非自立,*,*,五段・カ行イ音便,基本形,おく,オク,オク よう: 名詞,非自立,助動詞語幹,*,*,*,よう,ヨウ,ヨー に: 助詞,副詞化,*,*,*,*,に,ニ,ニ
Mecab is free software and can be used under the GPL, LGPL, and/or BSD licenses. For details, please check the COPYING, GPL, LGPL, and BSD files included with Mecab. Feel free to use this repository under the terms of the licenses inherited from Mecab.
This repository is based on: