【30】C#实战篇——获取路径下的文件名(不包含路径和扩展名),文件名由连续的数字编号+连续的字母编号组成,并分离出文件名数字部分和英文部分

文章目录

  • [1 要求](#1 要求)
  • [2 分析 与 实现](#2 分析 与 实现)

1 要求

写一个函数,获取路径下的文件名(不包含路径和扩展名),并分离出文件名fileName ,文件名编号SN,文件名前缀WMT

输入文件路径,解析出不带"."后缀的文件名fileName,然后fileName进一步拆分为SN+WMF 格式,其中WMT是MatchFilter数组中去掉"."后缀的部分,那么 fileName 减去末尾的WMF就得到SN。

E:\MTF\A1\StandardData\00000000000001Tele.csv拆分结果 fileName = 00000000000001TeleSN = 00000000000001WMT =Tele

2 分析 与 实现

文件名由连续的数字编号+连续的字母编号组成,且顺序是数字标号在前,英文字母编号在后;

cpp 复制代码
 // 从文件路径中提取文件名并分割为数字编号和英文后缀
 private void ExtractFileNameParts2(string filePath, ref string fileName,ref string SN, ref string WMT)
 {
     fileName = Path.GetFileNameWithoutExtension(filePath); // 获取不带扩展名的文件名
     Regex regex = new Regex(@"(\d+)([a-zA-Z]+)$"); // 匹配文件名中的数字编号和英文后缀
     Match match = regex.Match(fileName);

     if (match.Success)
     {
         SN = match.Groups[1].Value; // 数字编号部分
         WMT = match.Groups[2].Value; // 英文后缀部分
     }
     else
     {
         SN = string.Empty;
         WMT = string.Empty;
     }
 }
相关推荐
曹牧1 天前
C#:主线程能够捕获到子线程中的异常
开发语言·数据库·c#
jiayong231 天前
海量数据处理技术方案与实现原理
大数据·c#·linq
z落落1 天前
C# 类与对象、字段、静态与非静态+四大访问修饰符
开发语言·c#
魔法阵维护师1 天前
从零开发游戏需要学习的c#模块,第三十二章(Boss 战系统)
学习·游戏·c#
魔法阵维护师1 天前
从零开发游戏需要学习的c#模块,第三十三章(暂停菜单)
学习·游戏·c#
z落落2 天前
C# Stack栈 / Queue队列+所有集合 终极一页汇总(全覆盖、零遗漏)
java·开发语言·c#
淡海水2 天前
08-认知篇-对比-injectfix深度解析
unity·c#·热更新·clr·hybrid·injectfix
周杰伦fans2 天前
C# 踩坑 CS8370:Switch Expression 在 C# 7.3 不可用及三种解决方案
c#
z落落2 天前
C# ToCharArray + foreach遍历 + String与StringBuilder
开发语言·c#