【排版小技巧】用正则表达式去除不恰当的硬回车

  • w
    wq_xenocide
    问题描述:很多文本文档会有很多硬回车破坏文字的连贯性,产生的原因主要是这些文字复制于网页或论坛,其通常会使用硬回车来控制文本每行宽度。
    硬回车效果图:

    这会导致以下几个问题:
    1 不去除硬回车,在不同屏幕大小设备上阅读时无法良好排版。
    2 由于硬回车破坏断句,导致朗读软件在硬回车处朗读停顿生硬不好听。

    解决方案:用正则表达式识别并删除这些不恰当的硬回车,同时保留文本正常的段落回车
    工具:notepad++(或者其他支持正则表达式替换的工具)
    查找正则表达式:

    替换字符:

    说明:上面的25,是行宽,这个需要你更具文档实际情况调整,原则是小于最大行宽。比如当前文档最大行宽是60个字符,那么这个值一般控制在75%~90%为佳,这里就是45~54。中的|隔开的标点符号表示要排除的行尾符号,可更具文档实际情况增加行尾符号,即如果行以这些符号结尾则不做硬回车删除。
    替换示意图:



    替换后效果图:
  • y
    yxmr
    你把处理后的txt发上来我才信
  • t
    tinkerbell
    这个很有用,黏贴复制的东西很多回车特别烦
  • k
    kzm100
    我用这个,排版助手
    https://sites.google.com/site/yinzhi6367/pai-ban-zhu-shou
    排版助手(GIDOT TYPESETTER)
    由Mr.GiDot制作,大小仅2M,是文本转换准备阶段的好帮手,它能够很方便的实现txt文本的粗排
    主要功能有:
    段首缩进
    合并换行(无空行/空1行/空2行)
    修正干扰符
    全角/半角转换,以及简繁互转
    全文替换
  • 盛世美颜
    马克一下
  • w
    wq_xenocide
    我是没找到有软件能自动识别删除硬回车,你这个软件可以自动删除这种行宽控制硬回车?
  • i
    ikownive
    ultraedit,一个全选,然后替换掉所有的^p为‘’就可以了
  • j
    jtxql
    正则学习了
  • o
    oooocoooo
    我用的是textpro
  • w
    wq_xenocide
    是不恰当的硬回车,而不是所有回车。文本本身的段落回车要保留
  • k
    kzm100
    回复6#wq_xenocide


    我用了很多年了。你试试能不能满足要求。
  • s
    shehzb
    谢谢 iOS fly ~
  • d
    deepdream
    mark一下硬回车
  • z
    zhenyue
    VIM 试过吗?
  • j
    jmhqlw
    马克马克
  • o
    o0o0oo0o0o
    马克马克。
  • s
    storespace0930
    妈的,正则是每次用都要学的语言
  • s
    storespace0930
    等等,楼主,你这个是开车帖吧。楼上各位还一本正经讨论技术
  • r
    river3moon
    文字排版软件mark
  • 1
    11ww22
    能否解释一下什么意思…用过几次早忘了
  • s
    synoman
    不错,很GEEK
  • y
    ypow
    学习马克
  • a
    awk
    linux删除回车

    tr -d '\r\n'
  • 猪头大哥
    \\r\\n
  • z
    zerofire
    学习了