テキスト文字列内の文字のすべてのインスタンスを別の文字に置き換えようとしていますが、成功しません。
テキストが
cat rat mat fat
スクリプトをすべてのt's to p's
cap rap map fap
私が持っているのは次のとおりですが、それは私にはほとんど役に立たないようです。
SET /P MY_TEXT=ENTER TEXT:
SET T2P=P
SET NEW_TEXT=%TEXT=:T!T2P!%
MSG * %NEW_TEXT%
テキスト文字列内の文字のすべてのインスタンスを別の文字に置き換えようとしていますが、成功しません。
テキストが
cat rat mat fat
スクリプトをすべてのt's to p's
cap rap map fap
私が持っているのは次のとおりですが、それは私にはほとんど役に立たないようです。
SET /P MY_TEXT=ENTER TEXT:
SET T2P=P
SET NEW_TEXT=%TEXT=:T!T2P!%
MSG * %NEW_TEXT%
これを試して
setlocal
set string=cat rat mat fat
set string=%string:t=p%
=
間違った場所に看板があります。試す:
setlocal enabledelayedexpansion
set /P MY_TEXT=ENTER TEXT:
SET T2P=P
set NEW_TEXT=%MY_TEXT:T=!T2P!%
MSG * %NEW_TEXT%
逆に拡張することもできます。
set NEW_TEXT=!MY_TEXT:T=%T2P%!
次のように「sed」を使用できます。
echo "cat rat mat fat" | sed 's/t/p/g' # outputs "cap rap map fap"