私のアプリケーションは非常に遅く、正常になるまでに数時間かかることがあります。プロファイラーを使用したとき、正規表現の一致が発生する場所に過ぎない長い時間がかかるコードを見つけました。体がパフォーマンスを改善する方法を教えてくれますか. コード スニペットを以下に示します。
Regex rx = new Regex(@"^[A-Za-z0-9]([_\.\-]?[A-Za-z0-9]+)*\@[A-Za-z0-9]([_\.\-]?[A-Za-z0-9]+)*\.[A-Za-z0-9]([_\.\-]?[A-Za-z0-9]+)*$|^$");
rx.IsMatch("john.gilbert.stu.seattle.washington.us");
パターンをキャッシュして再利用する方法はありますか?