找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28743|回复: 3

[文本处理] 批处理BAT如何提取路径信息?

[复制链接]
发表于 2014-5-9 11:11:22 | 显示全部楼层 |阅读模式
<item file="E:\TSAI_SVN\trunk\SH50\workspace\点读本\语音文件flash排列顺序\242苹果.mp3" title="242苹果" len="3082"/>
对于以上的样本,路径的深度和格式可能会不同,想利用delims 通过有效的符号来提取出"E:\TSAI_SVN\trunk\SH50\workspace\点读本\语音文件flash排列顺序\242苹果.mp3",但是delims=“ 这样的写法好像是不可以的,请教如何可以提取路径
发表于 2014-5-9 11:34:27 | 显示全部楼层
本帖最后由 hu_contact 于 2014-5-9 11:41 编辑

@echo off&setlocal enabledelayedexpansion
for /f "tokens=2" %%i in (test1.txt) do set "str=%%i"&echo !str:~5!
pause
发表于 2014-5-9 12:11:13 | 显示全部楼层
回复 1# change.tsai
  1. @echo off
  2. for /f tokens^=2delims^=^" %%i in (a.txt) do echo %%i
  3. pause
复制代码
发表于 2014-5-9 19:32:09 | 显示全部楼层
%%~a 就可以去掉 %%a 中的引号
从整篇 xml 中提取 file 属性的值,可以这样:
  1. @echo off
  2. for /f "delims=" %%a in (a.xml) do (
  3.    for %%b in (%%a) do (
  4.       set "var=%%~a"
  5.       setlocal enabledelayedexpansion
  6.       if /i !last!==file echo;!var!
  7.       endlocal
  8.       set "last=%%a"
  9.    )
  10. )
  11. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 03:15 , Processed in 0.022976 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表