Regex.MatchTimeout プロパティ

定義

現在のインスタンスのタイムアウト間隔を取得します。

public:
 property TimeSpan MatchTimeout { TimeSpan get(); };
public TimeSpan MatchTimeout { get; }
member this.MatchTimeout : TimeSpan
Public ReadOnly Property MatchTimeout As TimeSpan

プロパティ値

RegexMatchTimeoutExceptionがスローされるまでのパターン マッチング操作で経過できる最大時間間隔。タイムアウトが無効になっている場合はInfiniteMatchTimeout

注釈

MatchTimeout プロパティは、操作がタイムアウトする前に、Regex インスタンスが 1 つの一致する操作を実行するためのおおよその最大時間間隔を定義します。正規表現エンジンは、タイムアウト間隔が経過した後、次のタイミング チェック中にRegexMatchTimeoutException例外をスローします。 これにより、正規表現エンジンは、過剰なバックトラッキングを必要とする入力文字列を処理できなくなります。 詳細については、「正規表現の バックトラッキングベスト プラクティス」を参照してください。

このプロパティは読み取り専用です。 Regex(String, RegexOptions, TimeSpan) コンストラクターを呼び出すことによって、個々のRegex オブジェクトの値を明示的に設定できます。また、SetData(String, Object) メソッドを呼び出し、"REGEX_DEFAULT_MATCH_TIMEOUT" プロパティにTimeSpan値を指定することで、アプリケーション ドメイン内のすべてのRegex一致操作に対してその値を設定できます。

タイムアウト間隔を明示的に設定しない場合は、 InfiniteMatchTimeout 既定値が使用され、一致する操作はタイムアウトしません。

適用対象