C#正则表达式问题. [英] C# regex question.

查看:113
本文介绍了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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆