标题: [问题求助] 【已解决】VBS怎样提取一个文件文件名中的指定字符串做为另一个文件的文件名? [打印本页]
作者: 1270697389 时间: 2015-11-13 20:28 标题: 【已解决】VBS怎样提取一个文件文件名中的指定字符串做为另一个文件的文件名?
本帖最后由 pcl_test 于 2016-7-24 13:48 编辑
要把第一个mp3文件改为第二个文件的中文部分,有很多这样的文件需要批量处理。
mp3的文件名在krc文件名里有字符串,比如我要修改86d92ba58bef2eaae15989638f17e5d3.mp3的文件名,就要先找出含有86d92ba58bef2eaae15989638f17e5d3的字符的krc文件的文件名,取中文部分为文件名。
就是这样,不知道我讲清楚没有。谢谢大家!
86d92ba58bef2eaae15989638f17e5d3.mp3
华晨宇 - 微光-86d92ba58bef2eaae15989638f17e5d3-15367237-00000000.krc
没有人会吗?
作者: B魔方大人 时间: 2015-11-16 04:11
本帖最后由 B魔方大人 于 2015-11-16 10:28 编辑
bat版的,bat MP3 krc同目录
@echo off&setlocal enabledelayedexpansion
for %%i in (*.mp3) do (
for /f "delims=" %%s in ('dir /b *.krc^|findstr /c:"%%~ni"') do (
set n=%%~ns
set n=!n:%%~ni=!
ren "%%i" "!n!"
)
)
pause
作者: 1270697389 时间: 2015-11-16 11:29
回复 2# B魔方大人
嗯谢谢,很不错,就是后面还有没改掉的,比如
86d92ba58bef2eaae15989638f17e5d3.mp3
华晨宇 - 微光-86d92ba58bef2eaae15989638f17e5d3-15367237-00000000.krc
改出来是华晨宇 - 微光--15367237-00000000
后面的没去掉,去掉就完美了,谢谢
作者: Tianorder 时间: 2015-11-16 15:46
这个用正则表达式就可以吧?
krc文件有多少个?
作者: 1270697389 时间: 2015-11-16 19:38
回复 4# Tianorder
有几百个MP3,每个MP3都对应一个 krc文件
作者: WHY 时间: 2015-11-16 21:02
本帖最后由 WHY 于 2015-11-16 21:04 编辑
这样试下:- @echo off & setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b *.mp3') do (
- for %%j in ("*-%%~ni*.krc") do (
- set "s=%%~nj"
- for /f "delims=/" %%k in ("!s:-%%~ni=/!") do ren "%%i" "%%k%%~xi"
- )
- )
- pause
复制代码
作者: 1270697389 时间: 2015-11-17 08:38
回复 6# WHY
谢谢,好用!非常感谢
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |