设置 /p 批量忽略大写字母
有没有办法(通过标签或其他方式)在批处理脚本中设置Set /p忽略
大写字母?
Is there any way (via tag or other wise) to have Set /p ignore
capital letters in a batch script?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
或者,根据您计划如何处理用户输入,如果您想在决策中使用它,那么您可以使用
IF
的/I
开关命令。请参阅如果有帮助
。Alternatively, and depending on what you plan to do with the user input, if you want to use it in a decission, then you may use the
/I
switch of theIF
command. SeeHELP IF
.大写到小写:
Upper To Lower Case:
如果我们编写自己的 readline 例程,则
set /P
命令的所有输入限制(包括这一点)都可以得到解决。这是基本版本:例如,如果您想忽略输入中的大写字母,只需在
:ascii
标签后插入这两行:将大写字母转换为小写字母:
我们甚至可以编写一个异步 (并发)readline 例程,允许批处理文件在读取行的同时继续运行。
GETAKEY.COM 和 COLORMSG.COM 程序之前都在这个问题中给出:每行批量颜色
All input limitations of
set /P
command, including this one, may be solved if we write our own readline routine. This is the basic version:For example, if you want to ignore capital letters on input just insert these two lines after
:ascii
label:To convert uppercase letters to lowercase ones:
We may even write an asynchronous (concurrent) readline routine that allows the Batch file continue running at the same time it read the line.
Both GETAKEY.COM and COLORMSG.COM programs was previously given in this question: Batch Color per line
我不知道忽略,但你可以将它们转换为小写。
如果您想使用
For
命令转换为小写:或将
"A=a"
替换为"A="
等。删除大写字母。I don't know about ignore, but you could convert them to lower case.
If you wanted to use a
For
command to convert to lower case:Or replace
"A=a"
with"A="
, etc. to remove capitals.Rob 的网站可以提供帮助:这里有一些批量大小写转换的充实示例。
Rob's site to the rescue: here are some fleshed-out examples of batch case conversion.