17

I love LibreOffice / OpenOffice, but some tasks cannot be done in it, such as is mentioned in this question's title, to search and replace for special characters in Writer. Does anyone know how to do this?

This can be done with MS Word (for instance, searching for the paragraph mark "^p", and replace it with a tabulation "^t").

This can also be done in Notepad++ (in given example, using "\n" and "\t").

But in Writer, although there is the option "regular expressions", I cannot search for special characters with it - I always have to copy+paste text to MS Word/Notepad++, do what I want and copy+paste back to Writer...

Edit #1: for the tabulation mark it works when searching for \t.

What about with paragraph marks or line breaks? It does not seem to . I've already tried \r, \n, \r\n, \n\r, ^p, ^l...

Edit #2: Almost solved by @Linker3000, but what about paragraph marks?

Kyuvi
  • 105
  • 5
kokbira
  • 5,307
  • 12
  • 42
  • 74

3 Answers3

10

You can certainly use regular expressions in LibreOffice 3.4 as I have just tried it:

screenshot of LibreOffice Writer performing Find and Replace operation for special characters

There's a fuller list of what can and can't be used here:

https://help.libreoffice.org/Common/List_of_Regular_Expressions

Edit: There's some comments on how to deal with paragraph marks here:

http://www.oooninja.com/2007/12/example-regular-expressions-for-writer.html

Linker3000
  • 27,498
  • 3
  • 52
  • 73
  • I.e., it is impossible to do a single search for paragraph marks :( You can search for line breaks "shift+enter" (or a
    in html) with "\n". You can search for a text in a beginning of a paragraph, like "^thing" will search for a text "thing" that is in beginning of a paragraph. But paragraph mark no! :( Think that: I have a long text and I want to change all occurrences of "two enters" (not "shift-enter") with "one enter" (not "shift-enter"). How to do that? In MS Word, it's only replace of "^p^p" with "^p"...
    – kokbira Jun 17 '11 at 20:25
  • "You aren't evil", Linker3000, so, I'll give you the best answer. Although I continue to cannot do a search for double paragraph marks to replace with single paragraph marks (in MS Word, from "^p^p" to "^p", now I can do a search for empty paragraphs and replace with nothing (in OpenOffice, from "^$" to "") generating the same results. – kokbira Jun 19 '11 at 04:54
2

Even better (in my opinion) to do it with AltSearch. See this post. In the GUI of AltSearch You'll easily find codes all the non-printing chars and much more.

Adobe
  • 2,649
  • 2
  • 28
  • 34
  • It looks like got renamed to [Alternative dialog Find & Replace for Writer](http://extensions.libreoffice.org/extension-center/alternative-dialog-find-replace-for-writer). Ages ago I used to code regular expressons in `~/.config/libreoffice/3/user/config/AltSearchScript.txt` (I'm on linux) -- then I would assign them hotkeys using AltSearch GUI. I coded quite a number of text tranformations this way. Which exactly do You need? – Adobe Apr 22 '13 at 21:13
  • Only an effective way to replace tabulation marks with paragraph marks and vice-versa... E.g., I use that to transform some data organized in lines to spreadsheets. Currently, I use more than one application to do that if using Libre Office / Open Office. With MS Office it is so easy - on Word: 1) replace all ^p^p with ^l, 2) replace all ^p with ^t, 3) replace all ^l with ^p, 4) ctrl+a, ctrl+c; On Excel: 1) ctrl+v... – kokbira Apr 23 '13 at 12:30
1

As mentioned by Linker3000, you can search using regular expressions in LibreOffice Writer. This will allow you to find special characters.

The missing piece to Linker300's answer is specifically how to find paragraph markers. The trick is to use LibreOffice's regex functionality to search for $. In regex, $ means "end of line", which is exactly what we want. Thanks to user114967 for the tip.