Windows10 x64 にMeCabをインストールしてみる

百本ノック4章を受けるためにインストールしてみる。

参考にしたのはこちら MeCabのWindows版をインストールしてみる

mecab-0.996.exeをDLして実行。

辞書のエンコードutf-8 を選択する。

インストール先の /path/to/MeCab\bin を環境変数に登録する。

PS > mecab -v

mecab of 0.996

nodejsから使用するためのモジュールは エンコードを指定したいので node-mecab-lite を使用する。

PS >npm install mecab-lite

let MeCab = new require('mecab-lite')
let mecab = new MeCab();
mecab.MECAB = 'C:\\Dev\\MeCab\\bin\\mecab'; // path to MeCab command
mecab.ENCODING = 'UTF-8';                   // 'SHIFT_JIS' or 'UTF-8'
//mecab.TMP_DIR = process.env['HOME'] + '/tmp'; // temporary dir
let str = "すもももももももものうち";
let result = mecab.parseSync(str);
console.log(result);

実行結果
[ [ 'すもも', '名詞', '一般', '*', '*', '*', '*', 'すもも', 'スモモ', 'スモモ' ],
  [ 'も', '助詞', '係助詞', '*', '*', '*', '*', 'も', 'モ', 'モ' ],
  [ 'もも', '名詞', '一般', '*', '*', '*', '*', 'もも', 'モモ', 'モモ' ],
  [ 'も', '助詞', '係助詞', '*', '*', '*', '*', 'も', 'モ', 'モ' ],
  [ 'もも', '名詞', '一般', '*', '*', '*', '*', 'もも', 'モモ', 'モモ' ],
  [ 'の', '助詞', '連体化', '*', '*', '*', '*', 'の', 'ノ', 'ノ' ],
  [ 'うち', '名詞', '非自立', '副詞可能', '*', '*', '*', 'うち', 'ウチ', 'ウチ' ],
  [ 'EOS' ] ]

// let str = '一    名詞,数,*,*,*,*,一,イチ,イチ'
// console.log(str.str.split(/\t|\,/g)
// 0        1       2            3            4            5       6       7      8       9
// 表層形\t 品詞 ,  品詞細分類1, 品詞細分類2, 品詞細分類3, 活用型, 活用形, 原形,  読み,   発音
// [ '一' ,'名詞',  '数'       , '*'        , '*'        , '*'   , '*'   , '一', 'イチ', 'イチ' ]
// 表層形     (surface) -> 0
// 基本形     (base)    -> 7
// 品詞       (pos)     -> 1
// 品詞細分類1(pos1)    -> 2

百本ノックと公式では表示(というか定義)は違うけど、上記のような理解でよいのかな?

32番を見ると、そんな感じ

nodejs_x64 から mecab_x32 がkickできるという判断でよいのかな?と

第4章: 形態素解析のデータを作成する。

PS > mecab neko.txt -o neko.txt.mecab