使用正则表达式提取方法和属性

时间:2014-02-11 09:59:29

标签: c# regex

我使用以下代码从字符串

中提取方法和属性
string pattern = @"@[\w\.\()]+";
string value = "Create Account for @DisplayName() (Code : @Code)";
var reg = new Regex(pattern);
var matchs = reg.Matches(value);
foreach (var match in matchs)
{
    Console.WriteLine(match.ToString());
}

以下是结果

@DisplayName()
@Code)

这不是我预期的结果,我预期结果如下

@DisplayName()
@Code

我该怎么办?

2 个答案:

答案 0 :(得分:1)

你在课堂上允许)。强制)前面有(,并将两者组合在一起。

@[\w\.]+(\(\))?

答案 1 :(得分:0)

我假设正则表达式模式需要支持多个属性和函数。

@"@\w+(\(\))?(\.\w+(\(\))?)*"