ユーザーが「はい」または「いいえ」と答えたかどうかを解読するために、音声データの配列リストを繰り返し処理しています。シンプルねえ...
これは、「はい」と「いいえ」の両方を含む不明確な応答を検出する必要がある最初のチェックです。完璧に動作しますが、それを見るだけで、投稿するのが恥ずかしいと思います。大幅に簡略化できます。
if ((element.toString().startsWith("yes ")
|| element.toString().endsWith(" yes")
|| element.toString().contains(" yes "))
&& (element.toString().startsWith("no ")
|| element.toString().endsWith(" no")
|| element.toString().contains(" no "))) {
// I heard both yes and no - inform user I don't understand
ユーザーが希望する自然な音声を使用して受け入れたり拒否したりできるようにしたいので、配列データに次のような起こりそうもない事態を考慮する必要があります。
- はい・いいえ
- sey on
- はいノック
- 昨日いいえ
- 昨日ノック
- ベイズの定理ポルノ
私はこれまで多くの正規表現の投稿やチュートリアルを行ってきましたが、何をしても、投稿されたコードよりもうまく機能する解決策を見つけることができません。空白[\\s]が存在するか'|' いいえ、解決できません...
よろしくお願いします!