ColorKeywords.pmへの対応&ユーザ辞書更新

 前回からColorKeywords.pmが上手く動かない原因を探っていましたが、いろいろ調べたところ、どうやら文字コードが悪さをしていたらしく、Shift-JISなどでは「\Q〜\E」のメタ文字打ち消しの効果が発揮されないことがあるということが分かりました。
 生物用語抜き出しモジュールの中ではUTF-8に変換していましたが、ColorKeywords.pmに渡す前に、一度ファイルに書き出してから、もう一度読み込んでいたので、その間にまた文字コードが変化していたようです。なので、ファイルを読み出す際に、「quotemeta」関数をかませることで、全ての文字をリテラル解釈するようにしました。これで量指定子が入っている単語も正しく正規表現マッチさせることができるようになりました。

push @word_list, quotemeta($list[0]);

とすることで、ファイルからロードしつつ、quotemeta関数をさようさせるようにしました。文字コード関係の話はややこしいですね。
 ようやく問題が解決したので、また論文をプログラムに渡しながら、正しく用語が取り出せるか確認する作業を行いました。今回もいくつかの単語が正しく切断されてなかったので、ユーザ辞書に登録しました。

減数分裂,-1,-1,10,名詞,一般,*,*,*,*,減数分裂,ゲンスウブンレツ,ゲンスーブンレツ,用語
アッセイ,-1,-1,10,名詞,一般,*,*,*,*,アッセイ,アッセイ,アッセー,用語
軸索,-1,-1,10,名詞,一般,*,*,*,*,軸索,ジクサク,ジクサク,用語

などを登録しました。また、今回から、登録したエントリーに、「用語」という項目を付加しておきました。今後これを利用するようにプログラムを改良するかもしれません。