3

我的应用程序包括在运行时使用 CodeDOM 创建 POCO 类。我正在寻找一种方法来允许我的最终用户指定对他创建的某些属性的值的限制(例如,如果他添加属性电子邮件而不是他可能希望将内容验证到电子邮件地址。很明显,最终用户可能有更多的自定义限制)。

我的目的是提供一个PropertyValidation字段,最终用户可以在其中提供一个正则表达式,作为该属性创建实例的内容的验证器。

有什么方法可以在允许之前确保PropertyValidation字段中提供的字符串是真实的?Regex

4

2 回答 2

7

尝试创建一个 Regex 对象并捕获任何产生的错误:

try { Regex reg = new Regex(userDefinedValidation); } 
catch (ArgumentException) { /* not a regex */ }
于 2013-07-30T12:25:37.833 回答
-2

如果“Try-Catch 方式”过于笼统,那么您应该例如编写一个解析正确正则表达式的正则表达式;)

于 2013-07-30T12:31:56.343 回答