如何在Notepad++中从带完整路径的文件列表提取文件名
如何在Notepad++中提取去除扩展名的文件名(正则实现)
需求说明
输入文本(带完整路径的文件列表):
C:\AAAA\BBB\CCC\file1.dat D:\AAAA\FF FF F\CCC\file 2.dat D:\ANN NN\BBB\CCC\The.Third.File.dat期望输出(仅保留去除扩展名的文件名):
file1 file 2 The.Third.File
可以通过Notepad++的正则表达式查找替换功能快速实现,操作步骤如下:
- 打开目标文本文件,按下
Ctrl+H调出替换对话框 - 在「查找模式」区域选择「正则表达式」,同时确保勾选「匹配换行符」(部分旧版本Notepad++显示为「.匹配换行符」)
- 输入以下规则:
- 查找内容:
^.*\\|\.[^.]+$ - 替换为:
(留空,不输入任何内容)
- 查找内容:
- 点击「全部替换」,即可完成批量转换
正则表达式解析
^.*\\:匹配从行首到最后一个反斜杠(\)的所有字符,也就是文件的完整路径部分|:逻辑或运算符,匹配前后两个规则中的任意一项\.[^.]+$:匹配从最后一个点(.)到行尾的所有字符,也就是文件的扩展名部分
你提供的Delphi实现代码
var St: TStringList; i: Integer; begin st := TStringList.Create; try st.LoadFromFile('F:\TheFile.txt'); for i := 0 to st.Count - 1 do st[i] := ChangeFileExt(ExtractFileName(st[i]), ''); st.SaveToFile('F:\TheFile.txt'); finally st.Free; end; end;
内容的提问来源于stack exchange,提问作者Mahan
相关产品推荐
相关产品推荐

