如何编写语法匹配filename.ext*类文件,排除filename.ext*.*类文件?
文件名匹配解决方案
- 匹配目标:仅包含单个扩展名的文件,如
file1.ext1、file7.ext2、fileQ.ext3、file1.ext11、file1.extAB - 排除目标:包含多个扩展名的文件,如
file1.ext1.bak
可以使用以下正则表达式实现需求:
^[a-zA-Z0-9]+\.[a-zA-Z0-9]+$
正则规则说明
^:锁定字符串开头,确保文件名从这里开始匹配[a-zA-Z0-9]+:匹配文件名主体部分,允许字母、数字,至少1个字符\.:匹配文件名与扩展名之间的点号(转义后避免被识别为正则通配符)[a-zA-Z0-9]+:匹配扩展名部分,允许字母、数字,至少1个字符$:锁定字符串结尾,确保文件名后无多余后缀
如果文件名需要支持下划线等特殊字符,可调整字符集,比如允许下划线的版本:
^[a-zA-Z0-9_]+\.[a-zA-Z0-9_]+$
内容的提问来源于stack exchange,提问作者access_granted
相关产品推荐
相关产品推荐

