リタのchatopsボット用に持っている正規表現を少し修正しようとしています。次の正規表現があります。
/^(?:how\s+do\s+I\s+you\s+get\s+far\s+is\s+it\s+from\s+)?(.+)\s+to\s+(.+)/i
これは、「to」の前後の単語をキャプチャすることになっています。オプションの単語を前に付けて、次のような質問を形成できます: x から y までの移動方法、x から y までの距離、x から y までの距離。
期待される出力:
match 1 : "x"
match 2 : "y"
ほとんどの場合、オプションの単語は期待どおりに機能します。しかし、応答の一致を取得すると、最初のキャプチャ グループにつながる単語が含まれています。
したがって、how far is it from sfo to lax
次を返す必要があります。
sfo
とlax
。
しかし代わりに以下を返します:
how far is it from sfo
とlax