使用 windows cmd.exe 显示存储在变量中的第一个和最后一个字符串条目
Display First and Last string entries stored in a variable using windows cmd.exe
我有一个变量 (MyVar),其中存储了值。例如-->
MyVar="123, 234, 345, 456"
变量中的每个条目都由逗号分隔,如示例中所示。
我希望能够从此变量中选择第一个和最后一个条目,即 123 和 456 分别。
知道如何使用 windows cmd.exe 实现此目的吗?
谢谢!
set "first="
set "last="
for %%a in (%myvar%) do set "last=%%a"&if not defined first set "first=%%a"
echo first=%first% last=%last%
如果它们总是大于零而不是
以零为首,您可以使用 set /a
和变量子字符串:
set MyVar="123, 234, 345, 456"
set /a "First=%MyVar:"=%"
for %%i in (%MyVar:"=%)do set "Last=%%i"
echo=%First% %Last%
如果值是字母数字并且有可能设置从零开始and/or由零
@echo off
set MyVar="A01, 234, 345, 0X6"
for /f delims^=^"^, %%i in ('
echo\%MyVar%')do set "First=%%i" & (
for %%i in (%MyVar:"=%)do set "Last=%%~i")
echo=%First% %Last%
我有一个变量 (MyVar),其中存储了值。例如-->
MyVar="123, 234, 345, 456"
变量中的每个条目都由逗号分隔,如示例中所示。 我希望能够从此变量中选择第一个和最后一个条目,即 123 和 456 分别。
知道如何使用 windows cmd.exe 实现此目的吗?
谢谢!
set "first="
set "last="
for %%a in (%myvar%) do set "last=%%a"&if not defined first set "first=%%a"
echo first=%first% last=%last%
如果它们总是大于零而不是
以零为首,您可以使用 set /a
和变量子字符串:
set MyVar="123, 234, 345, 456"
set /a "First=%MyVar:"=%"
for %%i in (%MyVar:"=%)do set "Last=%%i"
echo=%First% %Last%
如果值是字母数字并且有可能设置从零开始and/or由零
@echo off
set MyVar="A01, 234, 345, 0X6"
for /f delims^=^"^, %%i in ('
echo\%MyVar%')do set "First=%%i" & (
for %%i in (%MyVar:"=%)do set "Last=%%~i")
echo=%First% %Last%