Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#regex验证文件名_C#_Regex - Fatal编程技术网

C#regex验证文件名

C#regex验证文件名,c#,regex,C#,Regex,我想用字符串替换这些字符。空:给定文件名中的“”?*/\\\124; 如何使用Regex实现这一点 我试过这个: Regex r = new Regex("(?:[^a-z0-9.]|(?<=['\"]))", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant | RegexOptions.Compiled); FileName = r.Replace(FileName, String.Empt

我想用字符串替换这些字符。空:给定文件名中的“
”?*/\\\124;
如何使用Regex实现这一点 我试过这个:

Regex r = new Regex("(?:[^a-z0-9.]|(?<=['\"]))", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant | RegexOptions.Compiled);
                 FileName = r.Replace(FileName, String.Empty);
Regex r=new Regex((?:[^a-z0-9.]|)(?您可以使用该方法。它按其名称执行

Regex regex = new Regex(@"[\\'\\""\\<\\>\\?\\*\\/\\\\\|]");
var filename = "dfgdfg'\"<>?*/\\|dfdf";
filename = regex.Replace(filename, string.Empty);
然后:

var filename = SanitizeFileName("dfgdfg'\"<>?*/\\|dfdf");
var filename=SanitizeFileName(“dfgdfg'\”?*/\\\\\\\\\\\\;dfdfdf”);

请看这里的操作方法:

请记住使用Path.GetInvalidFileNameChars()

的可能重复项
var filename = SanitizeFileName("dfgdfg'\"<>?*/\\|dfdf");