MgrepAppで中国語の用例を検索

現在Web上には多くの中国語文献のデータが公開されています。それらをダウンロードした後、必要な用例を検索するためには、飯森秀昭氏MgrepApp(フ リーウェア)が便利です。

MgrepAppは、日本語や英語以外に、中国語簡体字(簡体字中国語)や中国語繁体字(繁体字中国語)のテキストファイルを検索できます。

残念なことに最近アップデートが止まっているため、起動すると「期限切れ」を知らせるメッセージが出ますが、OKをクリックすればそのまま使えま す。

MgrepAppの主な特徴

検索の手順

  1. 検索したいテキストファイルを用意し、フォルダに入れておく。
  2. MgrepAppを起動する。
  3. Languageでテキストファイルの言語を選ぶ。
  4. Chooseボタンを押してテキストファイルの入ったフォルダを選ぶ。
  5. 検索語を入力する。
  6. Searchボタンをクリックする。

検索結果の保存


検索のTips

エイリアスを使って複数の検索セットを作る。

MgrepAppはエイリアス(Windowsでいうところのショートカット)を追うことができます。フォルダに検索する文書のエイリアスを放り込 んでおくと、本体の文書ファイルの場所を動かさずに複数の検索セットを作ることができます。例えば、ある作家のファイルのエイリアスだけを入れたフォルダ を作る、ある年代の文章のファイルのエイリアスだけを入れたフォルダを作るなど、本体のファイルの場所を動かすことなく、さまざまな条件で検索するための セットを作ることができます。

  1. 目的のファイルのエイリアスを作る。ファイルをクリックして選択し、Mac OS 9であればコマンドキー(林檎マークのキー)+Mを、Mac OS Xであればコマンドキー+Lを押すと、エイリアスができる。
    エイリアスは影武者のようなものなので、一つのファイルに対していくつでも作ることが可能。またエイリアスを削除しても本体ファイルは削除されない。
  2. 適当な場所に新しいフォルダを作る。そのフォルダに自分が検索したい条件を備えたファイルのエイリアスを入れる。
  3. MgrepAppの検索画面 の「Follow alias」にチェックをつける。
  4. Chooseボタンを押してエイリアスの入ったフォルダを選ぶ。
  5. 検索語を入力して検索する。


各行ごとに強制改行の入ったファイルを検索する。

テキストの中には、段落ごとに改行するのではなく、1行ごとに一定の文字数で強制改行しているものがあります。こういうファイルを検索するときには 注意が必要です。

たとえば「学習」という単語を検索するとします。検索語として「学習」だけを入力すると、「学」と「習」の間に強制改行が入っている例、言い換えれ ば「学」が行末に来て「習」が次ぎの行頭に来ている場合は検索されてきません。その場合は以下のようにします。

  1. MgrepAppの検索語欄に学習と入力する。
  2. Regexメニューから「or」を選ぶ。
  3. 検索語欄に学と入力する。
  4. Regexメニューから「Carriage Return」を選ぶ。
  5. 検索語欄に習と入力する。

これで「学習」または「学 改行 習」を探すことができます。

上記の例は改行記号がCR(Carriage Return)の場合ですが、Windowsのテキストファイルの改行記号はCR+LFです。その場合は(4)のところを以下のようにしてください。

(4) Regexメニューから「Carriage Return」を選び、さらにRegexメニューから「Line Feed」を選ぶ。 

#Macのテキストファイルの改行記号はCR(Carriage Return)。
#Windowsのテキストファイルの改行記号はCR(Carriage Return)LF(Line Feed)。
#UNIXのテキストファイルの改行記号はLF(Line Feed)です。

#上記のような作業が面倒であれば、検索する前にあらかじめワープロやエディタの検索置換機能を使って改行記号を削除しておくという方法がありま す。NisusWriterの例はこちらへ


検索語を含み、且つ句読点に挟まれた部分を検索する。

たとえば「学習」という語を以下に示す検索式で検索すると、句読点で囲まれた以下のような部分がピックアップされてきます。
[,。?!][^,。?!]*学習[^,。?!]*[,。?!]
学習外国的技術,(句読点のすぐ後に検索語がある)
。我在北大学習。(句読点のすぐ前に検索語がある)
,把精力集中到学習中来。(中間に検索語がある)
もちろん?で終わる疑問文や、!で終わる感嘆文も検索されてきます。

検索式の入力の仕方

  1. 「Regex」メニューから「char in range」を選ぶと[0-9]が入力されるので、0-9を削除して,。?!を入力する。
    [,。?!]は,。?!のうちいずれかの文字を指す。
  2. 「Regex」メニューから「char not in range」を選ぶと[^0-9]が入力されるので、0-9を削除して,。?!を入力する。^を削除しないように注意。
    [^,。?!]は,。?!以外の文字を指す。
  3. 「Regex」メニューから「0 or more times」を選ぶと*が入力される。
    [^,。?!]*は,。?!以外の文字が0回または1回以上現れることを示す。
  4. 検索語を入力する。
  5.  (2)(3)を繰り返し、[^,。?!]*と入力する。
  6. (1)のようにして、[,。?!]と入力する。

できあがった検索式は以下の通り。
[,。?!][^,。?!]*検索語[^,。?!]*[,。?!]

この検索式の意味は、
,。?!の後に
,。?!以外の文字が0回または1回以上続き、
その後ろに目指す検索語あり、
さらにその後ろに,。?!以外の文字が0回または1回以上続き、
,。?!で終わる、そういう部分を探すという意味になります。

注意点:

2003年8月27日

ホームへ

次へ