私はこのアプリを Mac OS X v10.6 用に構築しています
私はテキストベースの冒険を構築しており、ユーザーが入力するコマンドを処理できる非常に単純な自然言語パーサーを作成しました。これまでのところうまく機能し、「剣を取る」や「箱の中を見る」などの文を解析できます。
私がやろうとしているのは、さまざまな単語のエイリアスのリストを作成して、入力コマンドの厳密さを緩和することです。たとえば、"take" は "grab" の別名を持つことができ、"go" は "move、walk、または travel" の別名を持つことができます。
キーが単語で、値がエイリアスの NSArray である NSDictionary を作成しようとしました。問題は、入力されたコマンドが使用可能なコマンドと一致するかどうかを判断する際に、キーに使用された単語でエイリアスを参照する必要があることでした。
エイリアスのいずれかを使用して、他のエイリアスを参照できるようにしたいと考えています。誰かがそれを行う良い方法を知っていますか?
私が考えたもう 1 つの考え (ただし、効率が悪いようです) は、エイリアスの各セットを配列に格納することです。解析するときに、一致させたい単語を含む配列を見つけ、その配列内の他のすべての単語をそれに対して一致させようとします。