批处理 > 提取 txt 文件中同一字符之间的部分行
Posted
技术标签:
【中文标题】批处理 > 提取 txt 文件中同一字符之间的部分行【英文标题】:Batch > Extract part of a line in a txt file between same character 【发布时间】:2021-03-29 00:26:05 【问题描述】:我有一个只有一行的文本文件。我需要提取由字符分隔的行的每个部分。示例:
1212123123!asdf asdf asdf asdf u!herd!TOTO!
我需要能够在没有!
的情况下回显!
之间的每个部分并显示它们
A:1212123123
B:asdf asdf asdf asdf u
C:herd
D:TOTO
我没有在知识库中找到解决方案
我试过了:
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
感谢您的帮助
【问题讨论】:
【参考方案1】:由于您似乎没有在自己编码方面表现出任何努力,所以这是一个完整的两行批处理文件答案,显示没有任何努力作为回报。如果您更改了问题标准,或者无法自行进行后续调整,则不会由我自己修改。
@Set "Line="&Set /P "Line="<"SingleLine.txt"
@If Defined Line Echo %Line:!=&Echo=%&Pause
【讨论】:
嗨 Compo,对此我深表歉意。谢谢。 @brs65,请看What should I do when someone answers my question?,看看你接下来应该考虑做什么。以上是关于批处理 > 提取 txt 文件中同一字符之间的部分行的主要内容,如果未能解决你的问题,请参考以下文章
如何用批处理命令把1个文件夹里多个csv文件的某一列合并成一个txt