Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

21 Ноябрь 2019, 04:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: « 1 2   Вниз
  Печать  
Автор Тема: Замена знаков абзаца  (Прочитано 17223 раз)
0 Пользователей и 1 Гость смотрят эту тему.
VlhOwn
Форумчанин
***
Offline Offline

Пол: Мужской
Расположение: Ростов-на-Дону
Сообщений: 1 076


« Ответ #15: 28 Октябрь 2011, 08:25 »

К сожалению он вообще не ищет.
Господа, давайте отделим мух от котлет.
Поиск на основе регулярных выражений использует именно механизм регулярных выражений (Regular Expressions), который работает в пределах одной строки (в терминах ООО - одного абзаца).
Метасимвол "^" в регулярных выражениях обозначает "начало строки (абзаца)", "$" - "конец строки (абзаца)", выражение - "^$" - соответственно пустую строку (пустой абзац).
Двух пустых строк в пределах одной строки не бывает.
Никаких символов за метасимволом "$" в регулярном выражении находиться не может.

MSO в отличие от OOo, насколько я помню, использует не механизм регулярных выражений, а поиск специальных символов. Именно поэтому там можно находить два или больше следующих подряд знаков абзаца.

Как убирать убирать последовательности пустых абзацев в ООо?
1. заменяем все пустые абзацы ^$ на выражения заведомо в документе не встречающиеся, например на !#@@@#!. (При этом пользователи LO памятуют, что кнопочка "заменить все" приводит к вылету LO, и сначала жмут "найти все", а потом "заменить".)
2. заменяем все выражения (!#@@@#!){2,} на $1
3. заменяем все выражения !#@@@#! на \n

Чтобы вообще избавиться от пустых абзацев, достаточно в п.3 делать замену не на \n, а на пустую строку.
Записан
Leonid-ooo
продвинутый пенсионер
Участник
**
Offline Offline

Пол: Мужской
Расположение: Санкт-Петербург
Сообщений: 19


« Ответ #16: 28 Октябрь 2011, 20:59 »

Чтобы найти 2 нужно ввести в строку поиска ^$\p

эту комбинацию OpenOffice.org не находит! ((( см. скриншот
Что делать?


[вложение удалено Администратором]
Записан
Leonid-ooo
продвинутый пенсионер
Участник
**
Offline Offline

Пол: Мужской
Расположение: Санкт-Петербург
Сообщений: 19


« Ответ #17: 28 Октябрь 2011, 21:19 »

Ура!
сработала простая замена всех ^$ на пустую строку.
не забывать ставить птичку в "Регулярное выражение"!
См. 2 сриншота.

[вложение удалено Администратором]
Записан
RFJ
Форумчанин
***
Offline Offline

Сообщений: 220


« Ответ #18: 28 Октябрь 2011, 21:28 »

Поиск и замена, регулярные выражения - да, строка поиска ^$, Найти все, Закрыть, Delete.
Первый же ответ был правильным.
Записан

VlhOwn
Форумчанин
***
Offline Offline

Пол: Мужской
Расположение: Ростов-на-Дону
Сообщений: 1 076


« Ответ #19: 28 Октябрь 2011, 23:20 »

Ура!
Потрясающе!
Записан
Страниц: « 1 2   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!