5

我在下面找到了替换字符串的解决方案,但我并不完全理解。
如何更改代码以每行替换 3 个字符串?
我的更改(第 12 行和第 13 行)尚未生效。

是否可以不运行第二个和第三个循环?

ECHO off
SETLOCAL enabledelayedexpansion

SET source="C:\source.srt"
SET target="C:\target.srt"

IF EXIST %target% DEL /f %target%

FOR /f "delims=" %%i IN ('FINDSTR . %source%') DO (
   SET line=%%i
   SET line=!line:ö=oe!
   SET line=!line:ä=ae!
   SET line=!line:ü=ue!
   ECHO !line! >> %target%
)
4

1 回答 1

-2

你不想使用sed吗?这将是一个简单的单行命令。

sed -e 's/ö/oe/g' -e 's/ä/ae/g' -e 's/ü/ue/g' source.srt
于 2012-07-31T17:02:30.830 回答