这个问题最初来自Escapepercentsignsingivenvariables.我不想打乱那边的好答案。但是我的问题有点变了...让我们假设有一个用双引号括起来的给定字符串变量,其中可能包含一个或多个百分号。无法永久切换到已启用的延迟扩展(其他代码已经可用)。调用包含字符串变量作为参数的函数是必要的。这是我到目前为止确定的:@echooff&setlocalENABLEEXTENSIONSSETAlbumArtist=%1CALL:EscapePoisonChars%AlbumArtist%AlbumArtist_VDNecho%AlbumArtist_VDN%CALL:Esca