我有一个xml,格式如下:
<Record>
<ID>aaa</ID>
<NAME>aaa</NAME>
<ADD>aaa</ADD>
</RECORD>
<Record>
<ID>bbb</ID>
<NAME>bbb</NAME>
<ADD>bbb</ADD>
</RECORD>
我想提取ID标签之间的所有文本,并将它们放在另一个file.txt中的单独行中。
我的.bat如下:
@echo off
setlocal EnableDelayedExpansion
for /F "delims=" %%a in (file.xml) do (
set "line=%%a"
for %%X in (^"^
% Do NOT remove this line %
^") do for /F "delims=" %%b in ("!line:>=%%~X!") do (
if /I "!field!" equ "<ID_IC" for /F "delims=<" %%c in ("%%b") do >> file2.txt
set "field=%%b"
)
)
但不知怎的,这不起作用。任何人都可以帮我这个吗?
答案 0 :(得分:0)
for /f "tokens=2,3,4delims=<>" %%a in (filename) do if /i "%%a%%c"=="ID/ID" echo %%b
应根据需要列出您的数据。
使用<>
所以
<ID>aaa</ID>
成为令牌1 =前导空格,2 =“ID”,3 = aaa和4 = / ID
因此,如果%%a
中与%%c
中的令牌4连接的令牌2为ID/ID
,则所需数据位于%%b
(令牌3)
Simples。