`
hslh22
  • 浏览: 78133 次
  • 性别: 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;

        }

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

分享到:
评论

相关推荐

    C# 正则表达式.txt

    根据给定文件的信息,我们可以提炼出一系列与C#正则表达式相关的知识点,这些知识点涵盖了数字、字符、字符串长度、邮箱、网址、电话号码、身份证号等多方面的验证模式,以及一些特定场景下的数据清洗方法。...

    正则表达式

    正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它...

    C#验证常用正则表达式.doc

    ### C#验证常用正则表达式知识点解析 #### 一、引言 正则表达式是一种强大的文本处理工具,能够帮助我们实现对字符串的搜索、替换等操作。在C#编程语言中,正则表达式的应用非常广泛,尤其是在数据验证方面。本文将...

    CSharp正则表达式样例示范

    ### C#正则表达式样例示范 #### 正则表达式概述 正则表达式是一种强大的文本处理工具,能够帮助我们完成各种复杂的文本匹配、提取、替换等操作。在.NET框架中,C#提供了丰富的类库来支持正则表达式的使用,其中`...

    php的正则表达式完全手册.txt

    正则表达式(Regular Expression),简称regex或regexp,是一种用于处理字符串的强大工具,在多种编程语言和操作系统中都有广泛的应用,如*nix(包括Linux和Unix)、PHP、C#、Java等。它们在模式匹配、搜索和替换...

    ASP.NET 做项目时常用到的正则表达式

    **说明**:这里使用了正则表达式来匹配URL并提取出文件名部分。 #### 九、限制输入内容 **应用场景**:限制表单输入的内容类型是项目中常见的需求。 1. **只允许输入中文字符**: ```javascript onkeyup="value...

    C#词法分析程序,源代码

    C#中可以使用System.Text.RegularExpressions命名空间下的Regex类来进行正则表达式匹配。词法分析器会逐个字符读取源代码,与这些正则表达式进行比较,当找到匹配项时,就生成相应的标记。 在这个C#项目中,开发者...

    c# ip地址校验输入框 源码

    1. **正则表达式**:C#支持正则表达式库`System.Text.RegularExpressions`,可以编写一个正则模式来匹配IP地址。例如,一个简单的IP地址正则表达式可以是`^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2...

    自动删除非法字符.rar

    在IT领域,自动删除非法字符是一项重要的数据处理任务,它涉及到字符串操作、正则表达式、编程语言的应用等多个知识点。非法字符通常指的是那些在特定环境中不被允许或不能正常处理的字符,例如某些特殊符号、控制...

    C#的IP格式

    下面是如何在C#中使用这个正则表达式进行验证: ```csharp using System; using System.Text.RegularExpressions; public class IPTextBoxValidator { public static bool IsValidIP(string input) { Regex ...

    批量修改文件名及后缀

    5. **正则表达式**:某些高级工具支持使用正则表达式(Regular Expression)来定义文件名匹配和替换规则,这使得改名操作更加灵活和强大。例如,可以使用正则表达式移除或替换特定模式的文本。 6. **版本控制**:...

    HtmlAgilityPack C# 爬虫源码 爬图片

    总的来说,"HtmlAgilityPack C# 爬虫源码 爬图片"项目展示了如何结合HtmlAgilityPack和正则表达式实现一个简单的图片爬虫。通过这个项目,我们可以学习到HTML解析、网络请求和文件操作等核心技能,这些都是构建C#...

    C#批量重命名工具V2.0 VS2005版本

    开发者可以利用字符串操作方法,如Substring、Replace、Insert等,配合正则表达式实现复杂的重命名规则。 6. **错误处理与日志记录**:为了保证程序的稳定性和数据的安全性,批量重命名工具会包含错误处理机制,如...

    C#开发典型模块大全之客服管理模块源代码

    9. **数据验证**:在处理用户输入时,需要进行数据验证,例如检查邮箱格式、日期合法性等,C#提供了多种内置验证方法和正则表达式支持。 10. **单元测试**:为了确保代码的质量,开发者应编写单元测试用例,使用如...

    C# 控制台应用程序

    例如,可以使用正则表达式验证手机号码的合法性,确保其符合中国的11位数字格式。如果验证成功,程序可能还会模拟扣除充值金额,这可能涉及一个虚构的账户系统或者只是一个简单的变量更新。 在处理用户输入时,还...

    winform C#人民币大小写金额转换程序

    实现这一功能,开发者可能会使用C#的字符串处理函数、正则表达式进行输入验证,以及自定义转换算法。在WinForm中,利用控件事件(如Button的Click事件)驱动程序逻辑,通过Text属性读写用户输入和输出。 在提供的...

    ConsoleApplication111_C#_sampledata_

    6. **数据验证**:在上传数据前,可能需要对数据进行合法性检查,这可能涉及到正则表达式或其他验证规则。 7. **序列化与反序列化**:数据传输可能需要将对象转换为JSON或XML格式,再在服务器端进行反序列化。 8. ...

    浅析C#中文件路径的操作

    对文件路径的操作例如,要获取文件名称,可以通过截取字符串或者使用正则表达式来取得。 其实,在.NET类库中,有一个专门的功能类System.IO.Path,对表示文件或在目录路径的string进行操作。下面介绍下利用Path来对...

Global site tag (gtag.js) - Google Analytics