首页 > 解决方案 > 批处理 > 提取 txt 文件中同一字符之间的部分行

问题描述

我有一个包含一行的文本文件。我需要提取由字符分隔的行的每个部分。例子:

1212123123!asdf asdf asdf asdf u!herd!TOTO!

我需要能够在!没有之间呼应每个部分!并显示它们

A:1212123123
B:asdf asdf asdf asdf u
C:herd
D:TOTO

我在 KB 中没有找到解决方案

我试过了:

Set "String=1212123123!asdf asdf asdf asdf u!herd!TOTO!"

for /f "delims=2" %%f in (%String%) do set "%%f" (
    Set "Up2Sub=%String:*!=%"
    Set "SubStr=%Up2Sub:!="&:"%"
    echo %SubStr%
    )

但我得到了结果:

The system cannot find the file 1212123123!asdf.
asdf asdf asdf asdf u

谢谢您的帮助

标签: stringbatch-filecharacter

解决方案


由于您似乎没有表现出自己编写代码的努力,因此这是一个完整的两行批处理文件答案,显示没有任何努力作为回报。如果您更改了问题标准,或者无法自行进行后续调整,则不会由我自己修改。

@Set "Line="&Set /P "Line="<"SingleLine.txt"
@If Defined Line Echo %Line:!=&Echo=%&Pause

推荐阅读