查找文件名中的特殊字符

本文关键字:特殊字符 文件名 查找 | 更新日期: 2023-09-27 18:08:48

我需要简单地看看是否有任何匹配的一组特殊字符在文件名中,我已经尝试了所有常见的正则表达式,包括下面的。所有这些例子都可以找到除括号以外的任何特殊字符。

Regex.Match(filename, "[''['']{}!@#]");
// I even separated this out into 3 like this
Regex.Match(filename, "[");
Regex.Match(filename, "]");
Regex.Match(filename, "[{}!@#]");
filename.IndexOfAny("[]{}!@#".ToCharArray()) != -1

给了什么?

查找文件名中的特殊字符

Regex.Match(test, @"['[']{}!@#]");

Works for me:

string test = "aoeu[aoeu";
Match m = Regex.Match(test, @"['[']{}!@#]");
// m.Success == true

解决方案

filename.IndexOfAny("[]{}!@#".ToCharArray()) != -1

已经很完美了。