我正在尝试做的简短背景,我有一个可以选择多个文件的按钮上传。我试图将文件名与dateformat匹配,如果匹配我将做一些事情。
如何将此代码应用于我的代码?
string testDate = "3214312402-17-2013143214214";
Regex rgx = new Regex(@"\d{2}-\d{2}-\d{4}");
Match mat = rgx.Match(testDate);
Console.WriteLine(mat.ToString());
Console.ReadLine();
我的代码
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
HttpFileCollection hfc = Request.Files;
for (int i = 0; i < hfc.Count; i++)
{
if (hfc[i].FileName.Contains("2018-4-8 20-13-34"))
{
Response.Write(hfc[i].FileName + "Test");
hfc[i].SaveAs(@path + "\\" + hfc[i].FileName + "Test");
}
else
{
Response.Write(hfc[i].FileName);
hfc[i].SaveAs(@path + "\\" + hfc[i].FileName);
}
}
我上面的代码效果很好,但我唯一的问题是,这只适用于具有该特定日期的特定文件名,我需要为Contains应用正则表达式代码,并基于我迄今为止所研究的内容,包含只检测确切的字符串,不像正则表达式,可用于检测特定格式。
答案 0 :(得分:1)
替换
hfc[i].FileName.Contains("2018-4-8 20-13-34")
有关
Regex.IsMatch(hfc[i].FileName, @"\d{4}-\d-\d \d{2}-\d{2}-\d{2}")