2

Я работаю над текстовым файлом в Writer, который представляет собой отсортированный список слов и фраз. Он содержит некоторые дубликаты, которые я хочу удалить.

Обычно я использовал бы регулярное выражение в поиске и замене, но я не могу заставить его работать в Writer. Я пробовал такие вещи:

^(.*)$\1$

Это будет работать для одного и того же термина дважды в одной строке, но обычные способы выражения разрывов строк не работают:

^(.*)$\n\1$

Есть ли способ исправить это регулярное выражение или какой-то другой совершенно другой способ удалить повторяющиеся строки в Writer?

1 ответ1

2

Суровая правда в том, что LibreOffice/OpenOffice не имеет PCRE и, следовательно, ведет себя по-разному. Этот https://help.libreoffice.org/Common/List_of_Regular_Expressions показывает, как и когда LibreOffice отклоняется от PCRE.

Я думаю, что наиболее существенным моментом для вашего разочарования является то, что вы можете сопоставлять только разрывы строк, которые были введены нажатием Shift+Enter, а не "нормальные" разрывы строк.

К сожалению, кажется, что не существует простого способа обойти это ограничение, поэтому кто-то написал расширение с более мощными выражениями: https://extensions.libreoffice.org/extension-center/alternative-dialog-find-replace-for-writer

Однако я никогда не использовал его сам и не могу сказать, поможет ли он вам в вашей нынешней ситуации.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .