単語の語根を見つける PHP 辞書を作成する必要があります。元。「cars」で検索すると、「cars is multiple of car」または「took」で「take の過去形」と表示されます
ワードネットの利用を検討していますが、難しそうです。
なにか提案を?私は必死です
よろしく;
単語の語根を見つける PHP 辞書を作成する必要があります。元。「cars」で検索すると、「cars is multiple of car」または「took」で「take の過去形」と表示されます
ワードネットの利用を検討していますが、難しそうです。
なにか提案を?私は必死です
よろしく;
提案されたステマーは正しく機能しないため、ここから適切なものを選択できます。
ここにも興味深いライブラリがあります: http://sourceforge.net/projects/nlp/
また、StackOverflow に関する同様の質問へのリンク:
更新: 単語のステミングまたはレンマタイゼーションを行うにはどうすればよいですか?
Wordnet lemmatizer: http://wordnet.princeton.edu/wordnet/download/
さて、これは単語ステミングを行う拡張機能です (これはあなたが望むものだと思います): http://pecl.php.net/package/stem
ただし、作品の文法分析は行いません。
これはphpのみのバージョンです:http://www.chuggnutt.com/stemmer.php
ここで無料の Lemmatizer API を試すことができます: http://twinword.com/lemmatizer.php
下にスクロールして Lemmatizer エンドポイントを見つけます。
これにより、「犬」から「犬」、「能力」から「能力」を得ることができます。
「text」という POST または GET パラメータを「walked plant」のような文字列で渡すと、次のようになります。
// These code snippets use an open-source library. http://unirest.io/php
$response = Unirest\Request::post("[ENDPOINT URL]",
array(
"X-Mashape-Key" => "[API KEY]",
"Content-Type" => "application/x-www-form-urlencoded",
"Accept" => "application/json"
),
array(
"text" => "walked plants"
)
);
次のような応答が返されます。
{
"lemma": {
"plant": 1,
"walk": 1
},
"result_code": "200",
"result_msg": "Success"
}