Windows批处理文件匹配文件名中的前缀和后缀

时间:2014-08-26 12:12:42

标签: regex windows batch-file batch-rename

在Windows批处理文件中,当以这种方式命名文件时,是否可以提取somestring

prefix_somestring.txt
somestring_suffix.txt 

假设下划线_分隔前缀或后缀。上下文是遍历文件夹中的所有文件,并为每个文件返回somestring

1 个答案:

答案 0 :(得分:1)

您可以用空格替换_。然后文件名字符串将是两个单词。现在运行for循环并将两个单词存储在两个变量中。

请原谅通过移动应用程序输入简洁。

for %%a in ("%cd%\*.txt") do (
set myfile=%%~nxa
set myfile=!myfile:_= !

set part1=""
set part2=""
for %%i in (%myfile%) do (
    if "%part1%"=="" (
        set part1=%%i
    ) else (
        set part2=%%i
    )
)
echo %part1% %part2%
)