私はPythonチャットボットを書いています。手法が何であれ (レーベンシュタイン、LCS、正規表現など)、次のようMy name is [ A ].
な文字列に一致するほどスマートなパターンが必要です。
My name is Tslmy. #Distance should = 0, and groupdict()['a'] outputs "Tslmy"
My name is Tesla Tahomana. #Distance should = 0(!), and groupdict()['a'] outputs "Tesla Tahomana"
my naem ist tslmy . #With a little typo, the distance = 5, and groupdict()['a'] outputs "tslmy "
モノ(実際に)がキャプチャgroupdict()['a']
したものを参照するために使用させてください.[ A ]
(?P<identifier>match)
- 他の方法では、省略/スキップ/空白/ネグレクトを含む「レーベンシュタイン」を探し、スキップされたものも選択します。
- 別の方法では、パターンの厳密性を緩めることができるファジー(別名近似) 正規表現を探してい
groupdict()
ます。文字列に最もよく一致するパターン" 後で)。 これは、適切に管理されていれば「十分」であるため、推奨されるソリューションです。 ただし、最も近いソリューションであることがわかっている TRE ライブラリと REGEX ライブラリは、「あいまいさ」の値を提供していないようです。これが解決できれば、なおさらです!groupdict()
それは可能ですか?ご注意いただきありがとうございます。
アップデート:
最終的に強力な正規表現モジュールを使用することにしましたが、「ファジー値」を取得できませんでした。
このページの質問は理論的に解決されているため、追加しすぎると不名誉になります。そこで、この新しい問題について別の質問を提出しました。解決できることを願っています。