batch-file - 我如何从字符串中批量获取字符的位置

标签 batch-file command-line cmd

我有一个保存在变量RES中的结果字符串,此结果类似于2.3/5.0,我想在“/”之前获取该部分,然后通过ECHO命令将其发送到批处理输出。我一直在寻找如何使用批处理命令来执行此操作,但只能得到将子字符串固定到固定位置的结果,但是我怎么知道这个位置呢?
如果我知道这个职位,我唯一可能要做的就是:

ECHO %RES:~0,pos%

然后的问题是:如何从字符串中获得该位置?谢谢

最佳答案

如果您确实需要该位置本身,则可以将How do you get the string length in a batch file?的strlen函数应用于以下结果,但是,如果仅需要该前缀,则可以简单地执行以下操作:

set "res=2.3/5.0"
for /f "tokens=1 delims=/" %%i in ("%res%") do (set prefix=%%i)

关于batch-file - 我如何从字符串中批量获取字符的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21916913/

相关文章:

c++ - 命令行中的 Visual Studio 生成警告; IDE 没有

windows - 批量加速 Xcopy

linux - 检查字符串长度 - Linux

c# - 在 C# 中将命令发送到 cmd 提示符

javascript - 如何使用批处理文件循环 imacro 脚本

Heroku:heroku 不被识别为内部或外部命令、可操作程序或批处理文件

java - 查找 2 个参数的最小值

windows - 如何在 Windows 上执行节点脚本 (#!/usr/bin/env node)?

cmd - Windows 7 netcat 错误 : 'nc' is not recognized as an internal or external command

java - JDBC 批量更新和处理异常?