2012-01-16 6 views
0

私は検索エンジンのスクリプト、または検索エンジンを探しています行番号その次のことができます。大きなテキストファイルの検索エンジンスクリプト - 正規表現、複数のファイル、

  1. 検索ロット、特にフルテキストの何百 小説。
  2. 正規表現を使用して、単語や可能な変形を返します。
  3. ファイル内で、行番号や単語数などのすべての一致箇所を指定します。
  4. 私が熟練している唯一の言語なので、javascriptやphpで理想的です。おそらく結果を操作する必要があります。しかし、私は弾丸を噛むことができ、どんな言語にも構文を学ぶことができると確信しています。
  5. フィルタ固有名詞を見つける辞書に対する単語の検索結果配列(これは検索エンジンを含んでいなくてもよい)

コンテキスト及び仕様(長さだけ幾分重要なの一種):

私は、19世紀の小説(シェイクスピアの演劇を考える)のいとこの結婚のテーマを探している博士論文をやっている友人がいます。ふるい分けすることは永遠に続くでしょう。アルゴリズムは完全ではありませんが、物事を大幅に絞り込む必要があります。私は、「結婚」という言葉と、すべての変種、「いとこ」という言葉、そしてすべての変種を探し、その相対的な近接性を確認しています。もちろん私は何百もの全文小説を探しています。

相対的な近接度を見つけることは、私が見つけにくいという特徴です。それ以外では、主人公が関与していない場合は、主人公を確実にするためにすべての名前を検索する必要があります。意味私は決定することを試みている
A.一般的な名前。
B.主人公。 - 最も頻繁に使用される名前の1つである必要があります。

一般的な名前については、私は19世紀の名前の包括的なデータベースがないので、適切な名詞を除外します。そこから、私は句読点に続く固有名詞だけでなく、一般的な単語の謎を持っています。私は、私の最善の策は、適切な名詞を残して包括的な辞書を通してこれらすべての単語をフィルタリングすることだと思います。名前はおそらく最も頻繁に使用されますが、場所などの他の固有名詞を除外できるかどうかを確認します。確かに、完璧とはかけ離れていますが、物事をかなり狭めるでしょう。

これは、2つの巨大な単語のリストを比較することを意味します。これを行う方法はたくさんありますが、私が知っている言語で作業するのが簡単な形式であれば理想的です。私の推測では、大文字の単語の配列と辞書の単語の配列を比較し、その違いを見つけることです。それはPHPやjavascriptの場合は、私は良いです。他の言語に関しては、比較的簡単な操作であれば、文法を十分に理解することができると確信しています。

おそらくそれはあまりにも多くのコンテキストでしたが、アルゴリズムとプロセス全体に関するアドバイスもありがとうございます。

ありがとうございました。あなたは無制限の時間を節約することによって1つの巨大な博士論文に貢献しますので、私の友人も非常に感謝しています。

乾杯!

答えて

0

Sphiderが、それはあなたが http://www.sphider.eu/demo.php

を必要とする要件のほとんどを持っている、あなたがダウンロードできるオープンソースの検索エンジンです