如何使用字符串中的单词在批处理文件中拆分字符串

Posted

技术标签:

【中文标题】如何使用字符串中的单词在批处理文件中拆分字符串【英文标题】:How to split string in batch file using words inside the string 【发布时间】:2021-05-20 16:16:17 【问题描述】:

例如,我在另一个变量中有这个字符串:

444455556666&X=697&Y=250

我想在变量中获取 "&X=" 之后的 number"&Y=" 在另一个变量中。可以在批处理文件中吗? 注意:数字 444455556666 是 VARIABLE (可以更短也可以更长,所以不能随位置拆分)

【问题讨论】:

【参考方案1】:

你有一个很好的格式:如果你用&分割它,你会得到一个数字,X=nnnY=nnn。跳过第一个,使用第二个和第三个:

set "var=444455556666&X=697&Y=250"
for /f "tokens=2,3 delims=&" %%x in ("%var%") do set "%%x"&set "%%y"
echo %x%,%y%

【讨论】:

和...如果我有这个:“444455556666, 777788889”(任何两个变化的数字,仅除以逗号和空格)并且我想获得变量中的第一个数字和另一个变量中的第二个数字? for /f "tokens=1,2 delims=, " %%a in ("444455556666, 777788889") do set "first=%%a"&set "second=%%b" 注意:如果你使用空格作为分隔符,它必须是last delim-char。

以上是关于如何使用字符串中的单词在批处理文件中拆分字符串的主要内容,如果未能解决你的问题,请参考以下文章

在批处理文件中拆分以逗号分隔的字符串并在循环中调用 sqlplus 函数

拆分路径并在批处理脚本中取最后一个文件夹名称

当内容在单引号中时,使用 PowerShell 将 SQL 文件/字符串拆分为批处理排除拆分

如何从一行中删除某些单词,但将其余部分放入带有批处理的字符串/变量中?

使用批处理脚本,如何使用正则表达式拆分 .csv 文件中的数据?

批处理文件中的字符串替换