批处理字符如何替换成回车符或换行。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理字符如何替换成回车符或换行。相关的知识,希望对你有一定的参考价值。

比如说
我爱你%0d%0a你爱我%0d%0a你你你%0d%0a我我我
替换后:
我爱你
你爱我
你你你
我我我

谢谢。!

批处理编写时最好使用专门的编辑软件或者功能强大的文本编辑器就可以了。
一般不要使用批处理来替换或更改已经编好的内容,容易造成不可逆的损失;
文本内容可以使用下面的例子,删除字符并换行。

改编自: 迷茫之雁 的回答实例。
----------------------------------------------------------------------
@echo off>tmp.txt
set REN=
set /p REN=输入要删除的字符:
for /f "delims=" %%i in (a.txt) do (
set "s=%%i"
call set "s=%%s:%REN%=&echo.%%"
call call :write "echo.%%s%%"
)
start tmp.txt
exit
:write
(%~1)>>tmp.txt
goto :eof
参考技术A 这类的确不适宜用批处理解决,高手们懒得费神,我给小心地硬拼溱了一段,也就适宜楼主说的“比如”情况,若是有类似的还不敢说可以。
假定要换的就是%0d%0a(把它变换行),且每行最多有四处(再多要改 12345及bcdef顺延...)

@echo off &setlocal enabledelayedexpansion
echo 正在处理...
copy nul na.txt>nul
for /f "delims=" %%a in (a.txt) do (
set "hh=%%a"
set "hh=!hh:%%0d%%0a=■!"
for /f "tokens=1,2,3,4,5 delims=■" %%b in ('echo !hh!') do (
if "%%b" neq "" echo.%%b
if "%%c" neq "" echo.%%c
if "%%d" neq "" echo.%%d
if "%%e" neq "" echo.%%e
if "%%f" neq "" echo.%%f
)>>na.txt
)
start na.txt
echo 完成。&ping /n 2 127.1>nul本回答被提问者采纳

以上是关于批处理字符如何替换成回车符或换行。的主要内容,如果未能解决你的问题,请参考以下文章

shell中如何把回车换行置换成半角空格?

批处理语句里面换行符或者回车符怎么写?

批处理 替换字符成换行符

请问notepad++如何将换行替换成其它符号?

批处理bat查找记事本文件中指定字符串并替换为回车,也就是换行,最后保存到记事本中

如何去掉文本中的回车换行符或任意字符