C# 搜索字符串时返回null的正则表达式

C# 搜索字符串时返回null的正则表达式,c#,asp.net,regex,C#,Asp.net,Regex,我正在使用C#编写一个ASP.NET控制台应用程序,它试图通过登录并将文件写入本地驱动器来读取网站上的一些文件 我有以下正则表达式,它在文本文件中搜索一些字符串- var fileNames = (from Match m in Regex.Matches(pageSource, @"[0-9]+_+[A-Za-z]+_+[0-9]+-+[0-9]+-+[0-9]+(_+[0-9]+)?\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)")

我正在使用C#编写一个ASP.NET控制台应用程序,它试图通过登录并将文件写入本地驱动器来读取网站上的一些文件

我有以下正则表达式,它在文本文件中搜索一些字符串-

var fileNames = (from Match m in Regex.Matches(pageSource, @"[0-9]+_+[A-Za-z]+_+[0-9]+-+[0-9]+-+[0-9]+(_+[0-9]+)?\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)")
                        select new { m.Value }).ToList();
这段代码与执行相同任务的web应用程序完美配合。但是当我在控制台应用程序中使用它时,
filenames.count
为0

当这段代码还在我的web应用程序中运行时,可能会出现什么问题

提前感谢:)

这对我有用

我搬走了

选择新的{m.Value}).ToList()


感谢您的回复和帮助:)

看起来您在点之后和扩展之前有额外的空间:
\。+(附件.
。哦,写问题时出现了一个错误。更正了您可能应该发布一些示例-您希望匹配的值是什么。还要检查您的
pageSource
是否正确初始化并且与web应用程序中的值相同。换句话说,您从
{m.value}中删除了大括号
。你应该在回答中提到这一点;我花了很长时间才发现区别。
var fileNames = (from Match m in Regex.Matches(pageSource, @"[0-9]+_+[A-Za-z]+_+[0-9]+-+[0-9]+-+[0-9]+(_+[0-9]+)?\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)")                         select m.Value).ToList();