Batch file 批处理文件-多个空格的分隔符

Batch file 批处理文件-多个空格的分隔符,batch-file,for-loop,delimiter,Batch File,For Loop,Delimiter,我试图将每个标记从我拥有的txt文档中分离出来,并回显每个单词。问题是每个令牌之间有不同数量的空间。例如: 管理员-用户1-来宾 每个“u”代表一个空格,例如,管理员和用户1之间有12个空格,用户1和来宾之间有16个空格 在以下情况下,我如何使用批处理脚本分别回显其中的每一项: 1) 文件是“C:\Usernames.txt” 2) 它们都在txt文件的第一行 我试过: FOR /F "delims=" %A IN (C:\Usernames.txt) DO ECHO %A 我得到的只是“管

我试图将每个标记从我拥有的txt文档中分离出来,并回显每个单词。问题是每个令牌之间有不同数量的空间。例如:

管理员-用户1-来宾

每个“u”代表一个空格,例如,管理员和用户1之间有12个空格,用户1和来宾之间有16个空格

在以下情况下,我如何使用批处理脚本分别回显其中的每一项:

1) 文件是“C:\Usernames.txt” 2) 它们都在txt文件的第一行

我试过:

 FOR /F "delims=" %A IN (C:\Usernames.txt) DO ECHO %A
我得到的只是“管理员”的回应。非常感谢您的帮助。谢谢

编辑:

通过在for循环中加入for循环,我可以稍微靠近一点。我的密码是

 FOR /F "delims=" %A IN (C:\Usernames.txt) DO FOR %B IN (%A) DO ECHO %B
这使我能够将其分为4个部分,但我需要三个部分。我得到:

Administrator, User, 1, Guest

如何使User和1加入成为User 1?

这可能会起作用:它依赖于每个用户名之间至少有两个空格,并且任何用户名都不会包含两个连续的空格

net user |find "  "|repl " {2,50}" "\r\n" x
这使用了一个名为
repl.bat
(由dbenham提供)的助手批处理文件-下载自:


repl.bat
放在与批处理文件相同的文件夹中,或者放在路径上的文件夹中。

是预先确定的还是随机文本?我实际上是从“net user”命令将其输出到文本文件中。然后从这个文本文件中,我将包含用户的行提取到另一个文本文件中。现在我到了这一步,我需要向计算机上的每个用户回显(最好设置一个变量)。所以你的问题是随机的,因为根据用户的不同,每台计算机的问题会有所不同。可能重复的问题会有所帮助。如果我有带空格的用户名,如何使用它?你说只要没有两个连续的空格,它似乎就可以工作,但我的用户名只有一个,它不工作。它的打印输出-管理员,用户,1,GuestI更改了regexp-它在这里的有限测试中工作。完美。谢谢!