批处理文件 - 从文件中提取特定文本.txt



我需要使用 cmd 从文件中提取一些文本文本文件简化示例

{"code1":"7adu627","code2":"jwfuj4r","code3":"dsfhy3","code4":"usgf634"}

我需要拉出代码 2 和代码 3 之后的文本,所以输出将是这个

code2: jwfuj4r
code3: dsfhy3

或者只是这个

jwfuj4r
dsfhy3

找到了其他类似的帖子,但它们不起作用,或者我无法让它工作。

@echo off
for /f "tokens=2,3 delims=," %%a in (file.txt) do (
  for /f "tokens=2 delims=:" %%c in ("%%a") do echo %%~c
  for /f "tokens=2 delims=:" %%c in ("%%b") do echo %%~c
)

注意:这适用于您的示例。任何解决方案都将高度依赖于您的真实数据。

更通用一点(明确搜索code2code3(:

@echo off
for /f "delims=" %%a in (file.txt) do (
  for %%b in (%%a) do (
    for /f "tokens=1,2 delims=:" %%c in ("%%b") do (
      echo %%c|findstr "code2 code3">nul && echo %%~d
    )
  )
)

最新更新