1

DOSは、文字列内の「&」文字をうまく処理していないようです。私はURLを解析しようとしていますが、その多くには1つ以上の&があります。私が次のようなことをした場合:

    set var = "http://finance.yahoo.com/mbview/threadview/?v=m&bn=2"
    echo %var%
    pause

私は得る

ECHOはオフです。何かキーを押すと続行します 。。。

&文字を削除するとこれが修正されます。これは適切な回避策ですが、コードでこれを行う必要があります。これについて何か助けはありますか?

4

3 に答える 3

2

遅延展開を使用する場合、アンパサンドをエスケープする必要はありません

setlocal EnableDelayedExpansion
set "var=http://finance.yahoo.com/mbview/threadview/?v=m&bn=2"
Echo !var!
于 2013-03-03T12:50:42.803 に答える
1

Windows コマンド ラインの場合は、探しているものに違いありません。

set "var=http://finance.yahoo.com/mbview/threadview/?v=m^&bn=2"
echo %var%
pause

コードで^&を見る

于 2013-03-03T11:46:57.257 に答える
1

varとの間のスペースを削除します=

set var="http://finance.yahoo.com/mbview/threadview/?v=m&bn=2"
echo %var%
pause
于 2013-03-03T11:51:19.813 に答える