簡體   English   中英

在C#中驗證正則表達式是否形成良好的最簡單方法是什么?

[英]What is the easiest way in C# to validate if a regular expression is well formed?

在C#中有沒有簡單的方法來測試正則表達式是否是正則表達式? 換句話說,我想檢查用戶提供的正則表達式模式是否格式錯誤。 這純粹是一種語法測試,而不是正則表達式應該實現/測試的內容。 謝謝

您可以嘗試將其傳遞給Regex構造函數並捕獲可能的ArgumentException ,如果參數是格式錯誤的正則表達式,則拋出該ArgumentException

以下是C#Online .NET中使用異常的示例:

編輯:

為了以防萬一,刪除了尊重版權所有者的代碼。 只需點擊上面的鏈接即可查看。

我不得不說,這聽起來不太好。 能夠正確輸入正則表達式的極小數量的計算機用戶也應該被信任正確解釋異常消息。 試圖驗證他們的輸入並將其弄錯將足以讓他們變得非常瘋狂並卸載您的程序。

如果有經驗的程序員實際上不是您的目標客戶,請務必避免使用正則表達式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM