C#文件上载:reg ex中没有组?
直到今天早上,这个代码一直正常工作,有人能发现我的错误吗?可能真的很傻,但这让我难堪 我使用一个表单提交一个文件(字段名“fileUpEx”),然后我编写了一个类来上传它(就像我说的,它已经工作了很久了)。。。。 (如果我将“文件路径”写入页面,则为“Test copy.pdf”) 我的类返回“无组”!!! 很奇怪,有人能帮忙吗C#文件上载:reg ex中没有组?,c#,regex,file,upload,C#,Regex,File,Upload,直到今天早上,这个代码一直正常工作,有人能发现我的错误吗?可能真的很傻,但这让我难堪 我使用一个表单提交一个文件(字段名“fileUpEx”),然后我编写了一个类来上传它(就像我说的,它已经工作了很久了)。。。。 (如果我将“文件路径”写入页面,则为“Test copy.pdf”) 我的类返回“无组”!!! 很奇怪,有人能帮忙吗 string filepath = fileUpEx.PostedFile.FileName; string pat = @"\\(?:.+)\\(.+)\.(.+)"
string filepath = fileUpEx.PostedFile.FileName;
string pat = @"\\(?:.+)\\(.+)\.(.+)";
Regex r = new Regex(pat);
Match m = r.Match(filepath);
if (m.Groups[0].Captures.Count != 0)
{
//blaa blaa blaa
}
else
{
return "no Groups";
}
提前感谢,,
Vauneen正则表达式要求文件路径包含反斜杠,但它不包含反斜杠。您可以将该部分设置为可选部分,例如:
@"(?:\\.+\\)?(.+)\.(.+)"
或者,您可以使用以下可用的方法:
字符串
“Test copy.pdf”
当然与您的正则表达式不匹配。。。请Console.WriteLine(filepath)
查看其实际内容。是否要解释正则表达式-您似乎希望使用UNC文件名?!失败时,什么是fileUpEx.PostedFile.FileName
?
string extension = Path.GetExtension(filePath);
string filename = Path.GetFilenameWithoutExtension(filePath);