[英]How to validate if the input contains a valid .Net regular expression?
我正在構建一個將命名正則表達式保存到數據庫中的應用程序。 看起來像這樣:
我正在使用Asp.Net表單。 如何驗證輸入的正則表達式? 它希望用戶知道輸入的正則表達式是否不是有效的.Net正則表達式。
該字段應拒絕以下值:
^Wrong(R[g[x)]]$
Invalid\Q&\A
從中創建新的Regex類。 如果它拋出異常,那么它是無效的。
try{
new Regex(expression)
}
catch(ArgumentException ex)
{
// invalid regex
}
// valid regex
我知道。 使用代碼邏輯的異常是錯誤的。 但這似乎只是解決方案。
也許這樣的東西:
public static class RegexUtils
{
public static bool TryParse (string possibleRegex, out Regex regex)
{
regex = null;
try
{
regex = new Regex(possibleRegex);
return true;
}
catch (ArgumentException ae)
{
return false;
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.