「I」と「同意しない」という単語の間の最短の文字シーケンスを見つけようとしています (大文字と小文字は区別されません)。SOに関する同様の質問をすべて読みましたが、どの解決策もうまくいかないようです。これが私を悲しませている例文です:
アメリカ人として、私はあなたに反対しなければなりません。
そして、正規表現パターンに関する私の最善の推測は次のとおりです。
同意しません
"must"だけをキャプチャしたいのですが、代わりに、より長い文字列"can, I must" をキャプチャしています。「I」の後にスペースなどの何かが続く必要があることを指定する必要がないことを望んでいます。なぜなら、「私はそれに反対します」のような文には何も捉えられないからです。また、「I」を大文字にする必要はありません。基本的に、可能な限り貪欲でない一致が欲しいだけです。このサイトは、解決策を検証するために私が使用している場所の 1 つです。
http://regexpal.com/?flags=gi®ex=I%28.*%3F%29%20disagree&input=As%20an%20American%2C%20I%20must%20disagree%20with%20you.