
[討論]set/p提示字符串中含雙引號(hào)時(shí)的特殊處理最后由 qzwqzw 于 -2-3 13:40前不久的一個(gè)小代碼里出現(xiàn)了一個(gè)運(yùn)行時(shí)錯(cuò)誤由此引出set/p對(duì)提示字符串中含雙引號(hào)時(shí)的特殊處理首先看以下測(cè)試內(nèi)容
D:>set /p var=test<nultestD:>set /p var=te st<nulte stD:>set /p var=te st,other<nulte stD:>set /p var=pre te st,other<nulpre te st,otherD:>set /p var= s1 s2 s3 <nuls1 s2 s3D:>set /p var= s1 < s2 > s3 <nuls1 < s2 > s3D:>set /p var= s1 ; , = s3 <nuls1 ; , = s3D:>總的來(lái)說(shuō)如果set/p中的提示字符串中的首字符是雙引號(hào)則它會(huì)自動(dòng)脫去提示字符串中第一個(gè)以及最后一個(gè)雙引號(hào)并可以脫去最后一個(gè)雙引號(hào)之后的字符串內(nèi)容簡(jiǎn)單的說(shuō)它會(huì)自動(dòng)脫去字符串最外層的雙引號(hào)這與變量修飾符%~var的作用相似也與for/f對(duì)字符串引號(hào)的處理規(guī)則相似相比前二者它可以一般化處理內(nèi)部引號(hào)對(duì)中含分隔符的情況也就是說(shuō)這個(gè)含有內(nèi)部分隔符的字符串不會(huì)被切分

