[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何提取出来《》之间的内容赋给变量?

某txt文件各行如下(“期刊目录”前有很多空格)
       期刊目录:<span id="ctl00_ContentPlaceHolder1_lbCatalog">《杂志名d》2009年第23期</span></h1>
       期刊目录:<span id="ctl00_ContentPlaceHolder1_lbCatalog">《杂志名3》2009年第23期</span></h1>

如何用 delimits token(或者其他方法) 提取出来《》之间的内容赋给变量

[ 本帖最后由 hmgl 于 2010-3-13 10:33 编辑 ]
1

评分人数

    • Batcher: 感谢主动给标题标注[已解决]字样PB + 2

  1. @echo off
  2. for /f "tokens=2 delims=《》" %%i in (a.txt) do echo %%i
  3. pause
复制代码

TOP

  1. @echo off&setlocal enabledelayedexpansion&cls
  2. ::==============================================================
  3. set Num=0
  4. for /f "tokens=1,2,* usebackq delims=《》" %%a in ("1.txt") do (
  5. set "Ver_!Num!=%%b"
  6. set /a Num+=1
  7. )
  8. echo %Ver_0%   %Ver_1%
复制代码

TOP

如果要提取"《杂志名d》2009年第23期"怎么写delims?

[ 本帖最后由 hmgl 于 2010-3-3 21:10 编辑 ]

TOP

提取"《杂志名d》2009年第23期"怎么写delims?

某txt文件各行如下(“期刊目录”前有很多空格)
       期刊目录:<span id="ctl00_ContentPlaceHolder1_lbCatalog">《杂志名d》2009年第23期</span></h1>
       期刊目录:<span id="ctl00_ContentPlaceHolder1_lbCatalog">《杂志名3》2009年第23期</span></h1>

TOP

回复 4楼 的帖子

  1. @echo off
  2. for /f "tokens=3 delims=<>" %%a in (a.txt) do (
  3.     echo/%%a
  4. )
复制代码
Do All in Command Line

TOP

谢谢,这么快就得到代码,问题解决

TOP

<li class="fBold">[新视界]</li>
上面这个样子(前有空格)我用这个代码
@echo off
for /f "tokens=2 delims=[]" %%a in (a.txt) do (
    echo/%%a
怎么不得不到“新视界”行吗?

[ 本帖最后由 hmgl 于 2010-3-3 21:57 编辑 ]

TOP

问题解决:[和]两个居然是全角字符

TOP

返回列表