我想将project_Name_-_sofeware_Name.txt
之类的字符串处理到project_Name.txt
中,因此我编写了如下脚本来运行:
set temp1=%~n1
echo %temp1:-*=%
但是蝙蝠的输出仍然是project_Name_-_sofeware_Name.txt
。
我还写了另一个bat文件来获取文件夹名称:
:GetFolderName
set temp2=%temp1%
set temp1=%temp2:*\=%
If Not %temp1%==%temp2% Goto GetFolderName
输出字符串到目前为止与预期一致。
这也很奇怪。我认为,在运行temp1=%temp2:*\=%
后,它应该是FolderName。
答案 0 :(得分:2)
您可以通过一种非常简单的方式进行操作:
@echo off
set "temp1=project_Name_-_sofeware_Name.txt"
set "dummy=%temp1:_-_=" & set "temp2=%"
echo %temp2%
更多详细信息,位于Split string with string as delimiter。在这样的答案上注意评论 ...