`
hslh22
  • 浏览: 76781 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

C#检查文件名的合法正则表达式

    博客分类:
  • C#
阅读更多

引用 了网友的内容(http://tyllxx.iteye.com/blog/1411669),不过有点小问题,经本人测试,作者原来的代码,无法检查,半角的双引号、大于号以及小于号,本人小改了一下,希望本文能帮到需要用到的朋友

      /// <summary>

        /// 文件名检查

        /// </summary>

        /// <returns></returns>

        public static Boolean CheckFileName(string fileName)

        {

            StringBuilder description = new StringBuilder();  

            Boolean opResult = Regex.IsMatch(fileName, @"(?!((^(con)$)|^(con)\\..*|(^(prn)$)|^(prn)\\..*|(^(aux)$)|^(aux)\\..*|(^(nul)$)|^(nul)\\..*|(^(com)[1-9]$)|^(com)[1-9]\\..*|(^(lpt)[1-9]$)|^(lpt)[1-9]\\..*)|^\\s+|.*\\s$)(^[^\\\\\\/\\:\\<\\>\\*\\?\\\\\\""\\\\|]{1,255}$)");

 

            if (!opResult)

            {

                description.Append("文件名包含特殊符或系统关键字!");

            }

 

            if (description.Length > 0)

            {

                MessageBox.Show(description.ToString());

            }

            return opResult;

        }

注:经验证,文件名包含全角的小括号时,无法通过验证

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics