自动删除LibreOffice Writer中的换行符


9

通常,我发现我将文本从gedit(linux)文本编辑器文档复制到文字处理程序(如LibreOffice Writer)中。当然,我在文本中编码了硬换行符。

如何进行搜索和替换以重排LibreOffice Writer中的文本?换句话说,我需要删除换行符。

编辑: 由于有人建议,我将补充一点,我做regular expressions了一个老式程序员\n,以防万一它对LibreOffice有任何意义。当我选择“查找并替换”时,找不到搜索键。


请问您使用哪个LibreOffice版本?在4.0版中,在与3.6版一起使用时,还会出现错误“找不到搜索键” 。
nixda

AutoCorrect的设置将删除我从Emacs中粘贴的新行(它们在Writer中成为段落中断):help.libreoffice.org/Writer/Removing_Line_Breaks
Qsigma 2015年

Answers:


8
  1. 在“ 编辑” >“ 查找和替换”对话框中,勾选“使用正则表达式”,在“搜索”框中放置“ \ n”,在“替换为”框中没有任何内容,然后单击“ 全部替换”。这会删除可以用Shift+ 插入的换行符Enter(手动换行符)。这是有关正则表达式的LibreOffice文档的链接。
  2. LibreOffice Writer 默认情况下无法替换段落分隔符。将AltSearch加载项用于OpenOffice,因为它也可以与LibreOffice一起使用。
  3. 要自动执行粘贴和删除换行符,您可以尝试记录一个宏(help.libreoffice.org/Common/Macro),只需粘贴并执行替换操作,然后让LibreOffice将其记录在宏中。

1
我确实考虑过使用\n,当我搜索时会得到“找不到搜索关键字” \n
H2ONaCl 2012年

1
这意味着您在文档中没有换行符。使用(2)替换段落分隔符

2

意识到\n在搜索\n部分和替换部分中意味着不同的事情是有帮助的。

\n在搜索中匹配“硬性回报”-如果键入Ctrl-则得到的结果Enter

\n 替换中的“末段”。

就我而言,我正在努力用可见的段落实际上只是一个段落的行替换为编码为两个“硬返回”的空白行。通过在“查看”菜单中打开非打印字符的可见性,这一点变得显而易见。

因此,在我的情况下,由于我的paras是这样的(表示“ hard return为{ent}”,para end为{eop}):

Para1{ent}{ent}Para2{ent}{ent}Para3{eop}

因此,先查找然后替换全部:

\n\n

通过

\n

(启用regexp),将其更改为:

Para1{eop}Para2{eop}Para3{eop}

知道您可以通过搜索$^(实际上^$也是)来搜索多余的空段也可能会有所帮助。


您正在重复其他答案
山姆

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.