我有以下正则表达式:
^[[][A-Za-z_1-9]+[\]]$
我希望能够在字符串中获取此正则表达式的所有匹配项。匹配应该是形式[Whatever]
。在大括号内,还可以有一个_
或数字字符。所以我写了以下代码:
private const String REGEX = @"^[[][A-Za-z_1-9]+[\]]$";
static void Main(string[] args)
{
String expression = "([ColumnName] * 500) / ([AnotherColumn] - 50)";
MatchCollection matches = Regex.Matches(expression, REGEX);
foreach (Match match in matches)
{
Console.WriteLine(match.Value);
}
Console.ReadLine();
}
但不幸的matches
是,总是计数为零。显然,正则表达式正在检查整个字符串是否匹配,而不是从字符串中获取匹配项。我不确定正则表达式是否错误或我使用的方式Regex.Matches()
不正确。
有什么想法吗?