如何使用Batch从TXT文件复制特定的单词/数字?

时间:2015-01-28 13:13:53

标签: batch-file batch-processing text-editor

我需要搜索文本文件中字符串后面的特定nubmer。 例如,我有这些数据:

yyy = 80rr, xxx = 136rr, zzz = 95rr

我希望复制yyyrrxxxrrzzz rr之间的数字。

然后我想回应这些数字。有可能吗?

3 个答案:

答案 0 :(得分:1)

@ECHO OFF
SETLOCAL
FOR /f "tokens=3,7delims=r " %%a IN (q28193214.txt) DO (ECHO "%%a" and "%%b")

GOTO :EOF

我使用了一个名为q28193214.txt的文件,其中包含我的测试数据。

答案 1 :(得分:0)

您的批处理环境是什么?在带有awk的unix shell中,这可以很容易地完成:

echo "yyy = 80rr, xxx = 136rr, zzz = 95rr" | 
   awk '{ match($0, /yyy = ([0-9]*)rr, xxx = ([0-9]*)rr, zzz = ([0-9]*)rr/, a); print a[1] " " a[2] " " a[3]; }'

答案 2 :(得分:0)

@echo off

for /F "delims=" %%a in (input.txt) do set "line=%%a"
set /A "%line:r=%"

echo yyyyyyy = %yyyyyyy%
echo xxxxxxx = %xxxxxxx%
echo zzzzzzz = %zzzzzzz%

例如:

C:\> type input.txt
    yyyyyyy = 80rr, xxxxxxx = 136rr, zzzzzzz = 95rr

C:\> test.bat
yyyyyyy = 80
xxxxxxx = 136
zzzzzzz = 95