C# Regex在将表达式动态添加到列表中时出错
我正在尝试编写一些动态代码,其中每个控件的值都将通过附加到它的一组正则表达式 为了实现这一点,我创建了一个XML,它将表示所有正则表达式都将应用于它的值。示例XML:C# Regex在将表达式动态添加到列表中时出错,c#,.net,regex,C#,.net,Regex,我正在尝试编写一些动态代码,其中每个控件的值都将通过附加到它的一组正则表达式 为了实现这一点,我创建了一个XML,它将表示所有正则表达式都将应用于它的值。示例XML: <control name="firstname"> <validationtype ="regex:'. "> <validationtype ="regex:a-zA-Z"> </control> 当尝试在列表中添加类似“''”的正则表达式时,上面的代码将对象引用未设置为对象错
<control name="firstname">
<validationtype ="regex:'. ">
<validationtype ="regex:a-zA-Z">
</control>
当尝试在列表中添加类似“''”的正则表达式时,上面的代码将对象引用未设置为对象错误的实例
感谢你的指点
更新:所以有些人实际上偏离了我的要求:这就是我想要的
我有一个字符串数组,其中存储了另一个程序传递的所有正则表达式。程序将值传递为“regex:A-zA-z
”、“regex:0-9
”、“regex:.
”等
我想通过拆分程序传递的值,将所有表达式存储到List
对象中。所以,在我的列表中,我想存储“a-zA-z”、“0-9”等。
但是,它正在抛出未设置为实例的对象引用“这是因为您在foreach中编写了:foreach(vaildationtype中的var项)
您拼错了“validationtype”什么是vaildationtype
?属性项在哪里。文本已初始化?,请发布可编译代码:验证。添加(…
@MongZhu我知道空引用异常。更新了问题。validationtype只是我根据需要从XML中提取的XML节点。我想,让我只复制支持我的问题所需的内容,而不是整个程序。@MongZhu我已经搜索了internet,没有找到任何内容,因此问题就在这里。呵呵ping以获取帮助我们不需要整个程序。您需要调试应用程序来解决此问题,就像它是以副本形式编写的一样。从您的帖子中,我了解到这一行:validations.add(item.text.split(“:”)[1]);
抛出异常。但您说这只是伪代码。由于信息有限,我们无法帮助您,当然也无法为您调试程序。@DirtyDeveloper您的编辑没有添加任何新内容;您没有提供足够的信息来获得实际帮助。1)请阅读如何创建。2)请遵循链接文章中提供的指导;通过放置一些断点并单步执行代码开始调试代码。拼写错误会导致编译错误,而不会导致运行时错误,例如异常。他并不总是在XML文件中查找类型,即使在编译时,程序也不知道他是否正确t、 这就像在一个程序中调用一个IP地址,在你调用它之前,程序无法知道IP是否可用。你在foreach循环调用中谈论的是变量名,除非有这样一个拼写完全错误的变量,否则它将产生一个编译错误。你回答的要点与此无关xml@MongZhu日分ddy,我刚刚粘贴了一段代码。看看我的实际情况question@CyrilKrzyzowski这只是一段代码片段,psudo代码。
List<string> validations = new List<string>();
foreach(var item in vaildationtype)
{
if(item.contains("regex:")
{
validations.add(item.text.split(':')[1]);
}
}