gpt4 book ai didi

batch-file - 拆分字符串并循环遍历变量

转载 作者:行者123 更新时间:2023-12-03 16:38:02 24 4
gpt4 key购买 nike

我有一个格式为 101514,101234,101645,101798 的字符串。我想在 , 上拆分字符串,然后遍历每个单独的元素,将该元素与所需的值进行比较。

set required_value=1024
for /f "delims=," %%a in ("101514,101234,101645,101798") do (
set found=%%a
if "%found%"=="%required_value%" (
echo true
) else (
echo false
)
)

这里显然只考虑了第一部分。我可以使用 "tokens=1,2,3" 然后是 %%a%%b%%c等进行比较,但长度不固定。

有没有其他办法解决。

最佳答案

我建议使用不带循环的不同方法。

@echo off
setlocal EnableDelayedExpansion
set "RequiredValue=1024"
set "ValuesList=101514,101234,101645,101798"
rem Prepend and append a comma on value list.
set "AllValues=,%ValuesList%,"
rem Use substring replacement to find out if the required
rem value is included in list of values or is missing in list.
if "!AllValues:,%RequiredValue%,=!" == "%AllValues%" (
echo %RequiredValue% not found in %ValuesList%
) else (
echo %RequiredValue% is included in %ValuesList%
)
endlocal

要了解使用的命令及其工作原理,请打开 command prompt窗口,在那里执行以下命令,并仔细完整地阅读每个命令显示的帮助页面。

  • echo/?
  • endlocal/?
  • 如果/?
  • rem/?
  • 设置/?
  • setlocal/?

关于batch-file - 拆分字符串并循环遍历变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33843831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com