找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 31439|回复: 4

[文本处理] 【已解决】批处理如何将多个文本里的指定字符/字符串替换成回车换行符

[复制链接]
发表于 2016-7-29 21:11:35 | 显示全部楼层 |阅读模式
本帖最后由 bbaa 于 2016-8-1 19:23 编辑

bat如何将特定的内容替换成换行\r\n
有很多个文本
内容都只有一行
里面都有一个特定的分割符 以Html的<br/>
为例
如何把它替换成换行符(把它换行呢?)
  1. @Echo off
  2. setlocal enabledelayedexpansion
  3. set Lf=^


  4. for %%j in ("!Lf!") do (
  5.     for /f "delims=" %%i in (1.txt) do (
  6.         set "str=%%i"
  7.         set "str=!str:<br/>=%%~j!"
  8.         echo !str!>>1.tmp
  9.     )
  10. )
  11. more 1.tmp>1.txt
复制代码

已解决

评分

参与人数 1PB -4 收起 理由
pcl_test -4 发帖前先使用论坛搜索

查看全部评分

发表于 2016-7-29 22:22:37 | 显示全部楼层
  1. sed -i "s/<br \/>/<p>/g;s/<\/br>/<p>/g;s/<br\/>/<p>/g;s/<br>/<p>/g" "file"
  2. sed -i "s/<br\/>/\n<p>/g" "file"
复制代码
两行两个例子 1 所有跟br沾关系的都替换为<p>,对于网页,用浏览器打开就是换行的   2适合文本类需要直接效果,1 2 都是所有的都替换。
发表于 2016-7-29 23:18:40 | 显示全部楼层
本帖最后由 pcl_test 于 2016-7-30 13:18 编辑

回复 2# hlzj88

应该说<br>或<br />在网页中才是换行,另可以这样sed -i -r "s/<br\s?\/?>/\r\n/g"
发表于 2016-7-30 08:01:33 | 显示全部楼层
回复 2# hlzj88


这个场景使用其它符号作为s命令的分隔符比较好
  1. sed "s#<br/>#\r\n#g" 1.txt > 2.txt
复制代码
发表于 2016-8-1 23:52:12 | 显示全部楼层
谢谢楼上两位指正。刚好可以借鉴。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:17 , Processed in 0.019398 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表