【转】windows下文件名命名规则的正则表达式

【转自:http://blog.csdn.net/lsj19830812/article/details/4137003】

搜索了不少网站也没找到合适的,还是自己学习了下正则表达式,写了一个大家供参考

被保留的设备名不能被用来作为文件 名:CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9。 这些保留设备名不能后跟一个扩展名
正则表达式为:
(?!((^(con)$)|^(con)/..*|(^(prn)$)|^(prn)/..*|(^(aux)$)|^(aux)/..*|(^(nul)$)|^(nul)/..*|(^(com)[1-9]$)|^(com)[1-9]/..*|(^(lpt)[1-9]$)|^(lpt)[1-9]/..*)|^/s+|.*/s$)(^[^/////:/*/?/"/</>/|]{1,255}$)

去掉了多余的系统文件名,不能以空格为开头和结束,不能用//:*?"<>|作为文件名称,文件名称为1-255位

在Windows NT中CLOCK$也是一个保留设备名,没用到就先不加了

对了,写java程序用到的,‘/‘应该需要做两次转义了,其中双引号前面的‘/‘需要写成三个‘/‘

(?!((^(con)$)|^(con)//..*|(^(prn)$)|^(prn)//..*|(^(aux)$)|^(aux)//..*|(^(nul)$)|^(nul)//..*|(^(com)[1-9]$)|^(com)[1-9]//..*|(^(lpt)[1-9]$)|^(lpt)[1-9]//..*)|^//s+|.*//s$)(^[^/////////://*//?///"//<//>//|]{1,255}$)

【转】windows下文件名命名规则的正则表达式

时间: 2024-08-13 11:24:07

【转】windows下文件名命名规则的正则表达式的相关文章

详解 Python 中的下划线命名规则

在 python 中,下划线命名规则往往令初学者相当 疑惑:单下划线.双下划线.双下划线还分前后……那它们的作用与使用场景 到底有何区别呢?今天 就来聊聊这个话题. 1.单下划线(_) 通常情况下,单下划线(_)会在以下3种场景中使用: 1.1 在解释器中: 在这种情况下,“_”代表交互式解释器会话中上一条执行的语句的结果.这种用法首先被标准CPython解释器采用,然后其他类型的解释器也先后采用. >>> _ Traceback (most recent call last): Fil

paoding rose controller包及文件名命名规则

1.包命名规则:xxx.xxx.controllers(否则扫描不到) 2.文件命名规则 xxxController

windows下重命名一个带有前缀&quot;.&quot;dot字符的名字的错误问题

如果用正常的右键重命名那么肯定会报错的,比如: 有一个名为project的文件,我想把它命名为.project,加了个前缀dot.然后window就报错了,弹出个对话框让“你必须输入一个文件名”.它可能默认为这是文件后缀了吧.所以是“非法”的.但是Eclipse的工程文件就必须要这样命名,然后在用Eclipse导入工程的时候才能识别.也就是必须有这个前缀dot.这样的命名方法行不通可以用CMD窗口用命令行修改,如下: move  project .project 与Linux下的文件重命名方式差

Windows PE入门基础知识:Windows PE的作用、命名规则、启动方式、启动原理

Windows PE的全名是WindowsPreinstallationEnvironment(WinPE)直接从字面上翻译就 是"Windows预安装环境".微软的本意是:WinPE仅用做系统维护,并设置了各种限制.可以简单的理解为:PE是Windows系统的超级精简版.超级权限版(以系统system账户登录)!对于无法进入系统.修复系统.分区.重装系统等问题都可以进入PE进行操作,因此PE是系统维护强大的武器! 微软原版的PE,只有"命令行"即DOS窗口.网上流

C++变量命名规则

转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公司对变量命名并没有一定的规范,唯一要求就是能简单易懂,但是,我想,这个多个程序员,大概每个人都有自己习惯的一套 命名规则吧,不过,要是并不通用的话,大概看别人的程序会很头疼吧,SO 为了别人看偶的程序不至于太头疼,偶决定找个通俗的命名法来参考下,于是,搜到了匈牙利命名法... 匈牙利命名法的来历和介

python windows下批量修改文件名

经常会下载一些资料和学习视频,往往这些资料名称很多,想批量修改又很不方便,刚好用python写一个修改文件名的小程序. windows下安装python这个就不多说了,直接下载安装程序安装即可.https://www.python.org/downloads/ 3.x 2.x 都可以 我这个程序,是利用正则表达式的方式,针对一些比较偏的文件名进行过滤修改.没有针对子目录修改,大家可以自己行加以利用修改. rename-input.py #!/usr/bin/env python #coding:

[转]Windows编程命名规则

匈牙利命名法是一种编程时的命名规范.基本原则是:变量名=属性+类型+对象描述.其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分.命名要基于容易记忆容易理解的原则.目前在Windows程序开发和MFC程序开发中常用的命名规则是匈牙利命名法.下面就是HN命名法的一般规则. 属性部分 全局变量 g_ const常量  c_ c++类成员变量 m_ 静态变量 s_ 类型部分 指针 p 函数 fn 无效 v 句柄 h 长整型 l 布尔 b 浮点型(有时也指文件) f 双字 dw 字符串

CSS的class、id、css文件名的常用命名规则

(一)常用的CSS命名规则 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:left right center 登录条:loginbar 标志:logo 广告:banner 页面主体:main 热点:hot 新闻:news 下载:download 子导航:subnav精心开发5年的UI前端框架! 菜单:menu 子菜单:submenu 搜索:search 友情链

[Python3] 喝下忘情水,学习 Python 中常用的命名规则

1. 可用于"起名"的元素 字母.数字.下划线和"其它" 上面的"其它"包括中文.俄文等等 虽然 Python 支持"其它",但推荐只用字母.数字和下划线"起名" 字母打头为佳并且大小写敏感 慎用下划线打头 不能用数字打头,不能用纯数字"起名" 名字中不能有空格 Python 中的"关键字"不能用于"起名" 个人觉得没必要去记它们,若非要看,可以试