25

テキスト文字列内の文字のすべてのインスタンスを別の文字に置き換えようとしていますが、成功しません。

テキストが

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%
4

3 に答える 3

23

これを試して

setlocal 
set string=cat rat mat fat
set string=%string:t=p%
于 2016-07-20T06:50:55.263 に答える
14

=間違った場所に看板があります。試す:

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%!
于 2012-11-20T09:28:35.980 に答える
-3

次のように「sed」を使用できます。

echo "cat rat mat fat" | sed 's/t/p/g'  # outputs "cap rap map fap"
于 2012-11-20T09:27:19.560 に答える