ここに私の問題があります。バッチを作成し、単語間のすべてのスペースを文から移動したい。私はこれを一方向にしました。しかし、スペースを変数として設定し、その変数を set コマンドで使用したいと考えています。変数の定義をチェックした後、このスペース変数を適切にエコーしても、最後の文で移動できません。誰かが理由を教えてくれますか?
@echo off
::why this doesnt work???
(set /p word2=i will make )<nul>textfile.txt
<nul (set/p word3=all strings be )>>textfile.txt
<nul (set/p word4=one longstring)>>textfile.txt
echo(
type textfile.txt
echo(
echo(
::seting space
set sp=a b
set sa=%sp:a=%
set space=%sa:b=%
if defined space (echo space is defined) else (echo space is not defined)
echo(
echo lets see:%space%%space%%space%something%space%something%space%%space%, ...works
echo(
set /p inputalltext=<textfile.txt
echo %inputalltext%...input from textfile
set noplaceforspace=%inputalltext: =% ...as you see as normal,no space
echo %noplaceforspace%
::so, problem starts here. why are here places if space is defined and good echoing
::of space variable??
setlocal enabledelayedexpansion
set nogoodresult=%inputalltext:!space!=%
echo %nogoodresult%%space%%space% here i dont want space between words
echo(
pause