C#正则表达式问题. [英] C# regex question.
本文介绍了C#正则表达式问题.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
无法理解为什么我的Regex类无法实例化.正则表达式似乎很好,但是在调用"BuildStructure"时出现错误消息:
System.ArgumentException:解析"[(.* ?;)(([[(if)(while)(for)]).*?\(.*?\){({.*?})*?})]] -太多).
这是代码:
Can not get why my Regex class can not instantiate. The regular expression seems to be fine, but i''m getting error message when calling "BuildStructure":
System.ArgumentException : parsing "[(.*?;)(([(if)(while)(for)]).*?\(.*?\){({.*?})*?})]" - Too many )''s.
Here is the code:
class CodeStructureBuilder
{
private const String REGULAR_EXPRESSION =
@"[(.*?;)([(if)(while)(for)]\s*?\(.*?\){({.*?})*?})]";
public CodeStructureBuilder() {}
public void BuildStructure()
{
Regex regex = new Regex(REGULAR_EXPRESSION);
}
}
推荐答案
您还有一个反斜杠:
You either have an extra backslash:
"[(.*?;)([(if)(while)(for)]\s*?\(.*?\){({.*?})*?})]"
成为
"[(.*?;)([(if)(while)(for)]\s*?(.*?\){({.*?})*?})]"
或太少了:
or one too few:
"[(.*?;)([(if)(while)(for)]\s*?\(.*?\){({.*?}\)*?})]"
这篇关于C#正则表达式问题.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文