Regex.IsMatch 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示正則表達式是否在輸入字串中找到匹配。
多載
| 名稱 | Description |
|---|---|
| IsMatch(String, String, RegexOptions, TimeSpan) |
指出指定的正則表示式是否使用指定的比對選項和超時時間間隔,在指定的輸入字串中尋找相符專案。 |
| IsMatch(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan) |
指出指定的正則表示式是否使用指定的比對選項和超時時間間隔,在指定的輸入範圍中尋找相符專案。 |
| IsMatch(String, String, RegexOptions) |
指出指定的正則表示式是否使用指定的比對選項,在指定的輸入字元串中尋找相符專案。 |
| IsMatch(ReadOnlySpan<Char>, String, RegexOptions) |
指出指定的正則表示式是否使用指定的比對選項,在指定的輸入範圍中尋找相符專案。 |
| IsMatch(String, String) |
指出指定的正則表示式是否在指定的輸入字串中尋找相符專案。 |
| IsMatch(ReadOnlySpan<Char>, Int32) |
表示建構子中指定的 Regex 正則表達式是否在指定輸入區間內找到匹配,且從指定位置開始。 |
| IsMatch(ReadOnlySpan<Char>, String) |
指出指定的正則表示式是否在指定的輸入範圍中尋找相符專案。 |
| IsMatch(String, Int32) |
表示建構子中指定的 Regex 正則表達式是否在指定的輸入字串中找到匹配,且從該字串的指定起始位置開始。 |
| IsMatch(String) |
表示建構子中指定的 Regex 正則表達式是否在指定輸入字串中找到匹配。 |
| IsMatch(ReadOnlySpan<Char>) |
表示建構子中指定的 Regex 正則表達式是否在指定的輸入範圍中找到匹配。 |
IsMatch(String, String, RegexOptions, TimeSpan)
指出指定的正則表示式是否使用指定的比對選項和超時時間間隔,在指定的輸入字串中尋找相符專案。
public:
static bool IsMatch(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options, TimeSpan matchTimeout);
public static bool IsMatch(string input, string pattern, System.Text.RegularExpressions.RegexOptions options, TimeSpan matchTimeout);
static member IsMatch : string * string * System.Text.RegularExpressions.RegexOptions * TimeSpan -> bool
Public Shared Function IsMatch (input As String, pattern As String, options As RegexOptions, matchTimeout As TimeSpan) As Boolean
參數
- input
- String
要搜尋相符專案的字串。
- pattern
- String
要比對的正則表達式模式。
- options
- RegexOptions
列舉值的位元組合,提供比對的選項。
- matchTimeout
- TimeSpan
一個逾時區間,或 InfiniteMatchTimeout 表示方法不應逾時。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
input 或 pattern 為 null。
options 不是一個有效的 RegexOptions 值。
-或- matchTimeout 為負性、零或大於約24天。
備註
此 IsMatch(String, String, RegexOptions, TimeSpan) 方法通常用於驗證字串,或確保字串符合特定模式,而不必取回該字串進行後續操作。 若要取得匹配的字串,則改呼叫 Match(String, String, RegexOptions, TimeSpan) or Matches(String, String, RegexOptions, TimeSpan) 方法。
靜態 IsMatch(String, String, RegexOptions, TimeSpan) 方法等同於建 Regex 構一個具有指定模式與選項的物件,然後呼叫 IsMatch(String) 實例方法。 該模式會被快取,以便正則表達式引擎快速檢索。
參數 matchTimeout 指定模式匹配方法應該嘗試尋找匹配的時間,直到逾時結束。設定逾時間隔可防止依賴過度回溯的正則表達式在處理包含接近匹配的輸入時似乎停止回應。 若在該時間區內未找到匹配,方法會拋 RegexMatchTimeoutException 出例外。
matchTimeout 覆蓋該方法執行的應用程式域中所定義的任何預設逾時值。
給呼叫者的注意事項
我們建議你將參數設定 matchTimeout 為適當的值,例如兩秒。 如果你指定 InfiniteMatchTimeout,則會讓 停止,正則表達式引擎的效能會稍微好一點。 不過,您應該只在下列情況下停用逾時:
正則表達式所處理的輸入衍生自已知且受信任的來源,或包含靜態文字時。 這會排除使用者動態輸入的文字。
當正則表達式模式經過徹底測試,以確保其有效率地處理相符專案、不相符專案和接近相符專案時。
當正則表達式模式不包含任何已知在處理接近相符專案時造成過度回溯的語言元素。
另請參閱
適用於
IsMatch(ReadOnlySpan<Char>, String, RegexOptions, TimeSpan)
指出指定的正則表示式是否使用指定的比對選項和超時時間間隔,在指定的輸入範圍中尋找相符專案。
public:
static bool IsMatch(ReadOnlySpan<char> input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options, TimeSpan matchTimeout);
public static bool IsMatch(ReadOnlySpan<char> input, string pattern, System.Text.RegularExpressions.RegexOptions options, TimeSpan matchTimeout);
static member IsMatch : ReadOnlySpan<char> * string * System.Text.RegularExpressions.RegexOptions * TimeSpan -> bool
Public Shared Function IsMatch (input As ReadOnlySpan(Of Char), pattern As String, options As RegexOptions, matchTimeout As TimeSpan) As Boolean
參數
- input
- ReadOnlySpan<Char>
尋找匹配的時間。
- pattern
- String
要比對的正則表達式模式。
- options
- RegexOptions
列舉值的位元組合,提供比對的選項。
- matchTimeout
- TimeSpan
一個逾時區間,或 InfiniteMatchTimeout 表示方法不應逾時。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
pattern 是 null。
options 不是一個有效的 RegexOptions 數值,或 matchTimeout 為負值、零值,或大於約24天。
適用於
IsMatch(String, String, RegexOptions)
指出指定的正則表示式是否使用指定的比對選項,在指定的輸入字元串中尋找相符專案。
public:
static bool IsMatch(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options);
public static bool IsMatch(string input, string pattern, System.Text.RegularExpressions.RegexOptions options);
static member IsMatch : string * string * System.Text.RegularExpressions.RegexOptions -> bool
Public Shared Function IsMatch (input As String, pattern As String, options As RegexOptions) As Boolean
參數
- input
- String
要搜尋相符專案的字串。
- pattern
- String
要比對的正則表達式模式。
- options
- RegexOptions
列舉值的位元組合,提供比對的選項。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
input 或 pattern 為 null。
options 不是一個有效的 RegexOptions 值。
備註
此 IsMatch(String, String, RegexOptions) 方法通常用於驗證字串,或確保字串符合特定模式,而不必取回該字串進行後續操作。 若要取得匹配的字串,則改呼叫 Match(String, String, RegexOptions) or Matches(String, String, RegexOptions) 方法。
靜態 IsMatch(String, String, RegexOptions) 方法等同於建 Regex 構一個具有指定模式與選項的物件,然後呼叫 IsMatch(String) 實例方法。 該模式會被快取,以便正則表達式引擎快速檢索。
給呼叫者的注意事項
這個方法會在間隔後逾時,這個間隔等於呼叫它之應用程式域的預設逾時值。 若應用程式域尚未定義逾時值,則使用阻止方法逾時的值 InfiniteMatchTimeout。 驗證模式匹配 IsMatch(String, String, RegexOptions, TimeSpan)的推薦靜態方法是 ,這可以讓你設定逾時間隔。
另請參閱
適用於
IsMatch(ReadOnlySpan<Char>, String, RegexOptions)
指出指定的正則表示式是否使用指定的比對選項,在指定的輸入範圍中尋找相符專案。
public:
static bool IsMatch(ReadOnlySpan<char> input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options);
public static bool IsMatch(ReadOnlySpan<char> input, string pattern, System.Text.RegularExpressions.RegexOptions options);
static member IsMatch : ReadOnlySpan<char> * string * System.Text.RegularExpressions.RegexOptions -> bool
Public Shared Function IsMatch (input As ReadOnlySpan(Of Char), pattern As String, options As RegexOptions) As Boolean
參數
- input
- ReadOnlySpan<Char>
尋找匹配的時間。
- pattern
- String
要比對的正則表達式模式。
- options
- RegexOptions
列舉值的位元組合,提供比對的選項。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
pattern 是 null。
options 不是一個有效的 RegexOptions 值。
適用於
IsMatch(String, String)
指出指定的正則表示式是否在指定的輸入字串中尋找相符專案。
public:
static bool IsMatch(System::String ^ input, System::String ^ pattern);
public static bool IsMatch(string input, string pattern);
static member IsMatch : string * string -> bool
Public Shared Function IsMatch (input As String, pattern As String) As Boolean
參數
- input
- String
要搜尋相符專案的字串。
- pattern
- String
要比對的正則表達式模式。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
input 或 pattern 為 null。
備註
此 IsMatch(String, String) 方法通常用於驗證字串,或確保字串符合特定模式,而不必取回該字串進行後續操作。 若要取得匹配的字串,則改呼叫 Match(String, String) or Matches(String, String) 方法。
靜態 IsMatch(String, String) 方法等同於用 Regex 指定模式建構物件並呼叫 IsMatch(String) 實例方法。 該模式會被快取,以便正則表達式引擎快速檢索。
給呼叫者的注意事項
此方法在等於該方法所呼叫的應用域預設逾時值的區間後,逾時結束。 若應用程式域尚未定義逾時值,則使用阻止方法逾時的值 InfiniteMatchTimeout。 驗證模式匹配 IsMatch(String, String, RegexOptions, TimeSpan)的推薦靜態方法是 ,這可以讓你設定逾時間隔。
另請參閱
適用於
IsMatch(ReadOnlySpan<Char>, Int32)
表示建構子中指定的 Regex 正則表達式是否在指定輸入區間內找到匹配,且從指定位置開始。
public:
bool IsMatch(ReadOnlySpan<char> input, int startat);
public bool IsMatch(ReadOnlySpan<char> input, int startat);
member this.IsMatch : ReadOnlySpan<char> * int -> bool
Public Function IsMatch (input As ReadOnlySpan(Of Char), startat As Integer) As Boolean
參數
- input
- ReadOnlySpan<Char>
尋找匹配的時間。
- startat
- Int32
要開始搜尋之以零起始的字元位置。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
適用於
IsMatch(ReadOnlySpan<Char>, String)
指出指定的正則表示式是否在指定的輸入範圍中尋找相符專案。
public:
static bool IsMatch(ReadOnlySpan<char> input, System::String ^ pattern);
public static bool IsMatch(ReadOnlySpan<char> input, string pattern);
static member IsMatch : ReadOnlySpan<char> * string -> bool
Public Shared Function IsMatch (input As ReadOnlySpan(Of Char), pattern As String) As Boolean
參數
- input
- ReadOnlySpan<Char>
尋找匹配的時間。
- pattern
- String
要比對的正則表達式模式。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
發生正則表達式剖析錯誤。
pattern 是 null。
適用於
IsMatch(String, Int32)
表示建構子中指定的 Regex 正則表達式是否在指定的輸入字串中找到匹配,且從該字串的指定起始位置開始。
public:
bool IsMatch(System::String ^ input, int startat);
public bool IsMatch(string input, int startat);
member this.IsMatch : string * int -> bool
Public Function IsMatch (input As String, startat As Integer) As Boolean
參數
- input
- String
要搜尋相符專案的字串。
- startat
- Int32
角色位置,該從哪裡開始搜尋。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
input 是 null。
startat 小於零或大於 的 input長度。
備註
此 IsMatch(String, Int32) 方法通常用於驗證字串,或確保字串符合特定模式,而不必取回該字串進行後續操作。 若要取得匹配的字串,則改呼叫 Match(String, Int32) or Matches(String, Int32) 方法。
欲了解更多細節 startat,請參閱備註 Match(String, Int32)。
另請參閱
適用於
IsMatch(String)
表示建構子中指定的 Regex 正則表達式是否在指定輸入字串中找到匹配。
public:
bool IsMatch(System::String ^ input);
public bool IsMatch(string input);
member this.IsMatch : string -> bool
Public Function IsMatch (input As String) As Boolean
參數
- input
- String
要搜尋相符專案的字串。
傳回
true如果正則表達式找到匹配;否則,。 false
例外狀況
input 是 null。
備註
此 IsMatch(String) 方法通常用於驗證字串,或確保字串符合特定模式,而不必取回該字串進行後續操作。 為了判斷一個或多個字串是否符合正則表達式模式並檢索後續操作,呼叫 Match(String) or Matches(String) 方法。
如果比對作業的運行時間超過 RegexMatchTimeoutException 建構函式指定的超時時間間隔,就會擲回 Regex(String, RegexOptions, TimeSpan) 例外狀況。 如果您在呼叫建構函式時未設定超時時間間隔,則如果作業超過為建立 Regex 對象的應用程式域所建立的任何逾時值,則會擲回例外狀況。 如果在 Regex 建構函式呼叫或應用程式域的屬性中未定義逾時,或逾時值 InfiniteMatchTimeout,則不會擲回任何例外狀況。
另請參閱
適用於
IsMatch(ReadOnlySpan<Char>)
表示建構子中指定的 Regex 正則表達式是否在指定的輸入範圍中找到匹配。
public:
bool IsMatch(ReadOnlySpan<char> input);
public bool IsMatch(ReadOnlySpan<char> input);
member this.IsMatch : ReadOnlySpan<char> -> bool
Public Function IsMatch (input As ReadOnlySpan(Of Char)) As Boolean
參數
- input
- ReadOnlySpan<Char>
尋找匹配的時間。
傳回
true如果正則表達式找到匹配;否則,。 false