2011-02-05 5 views
2

英語のテキストに埋め込まれたJohnなどの人物の名前をすべて検索します。 C++でこれを行う最善の方法は何ですか?文字列に 'John'や一般的な単語のような名前が含まれているかどうかを確認します。

+1

名前のリストはありますか?名前はいくつですか?あなたのテキストはどのサイズですか? – marcog

+0

私は名前のリストを持たず、ユーザーがアップロードしたテキストのサイズは可変です。 – SkypeMeSM

+1

特に英語のテキストの問題は、ほとんどすべての国の名前を取得できることです。しかし、「潘基文(バ・キムン)」のような事件は、どの言語でも問題になるだろう。 – MSalters

答えて

2

ツールキットを使用する必要があります。http://en.wikipedia.org/wiki/Natural_language_processing_toolkitsを参照してください。 CやC++にはいくつかあり、これらは適切な名前のためのツールを持っています。名前は、ルックアップ、コンテキスト、および他のNLPヒューリスティックによって識別されます。特別な要件がある場合は、ルックアップサービスと組み合わせる必要があります。

例:

John fed his dog 

良いNLPツールキットはそう名詞が、固有名詞だけでなく、としてジョンを識別し、名前ジョンを知っているし、また解析「彼の」個人的な所有格代名詞としてします。

いくつかのツールを試してみることをお勧めします - 私はそれらのいくつかにオンラインデモがあると思います。

名前の後ろにいる人物(例:著者の曖昧さ回避者)を特定する必要がある場合、これは難しい作業です。多くの人がそれに取り組んでいます。

+0

あなたの投稿をありがとう。私は今AlchemyAPIを使用しようとしています。 – SkypeMeSM

関連する問題