Writer.Поиск и замена: Часто задаваемые вопросы

From Apache OpenOffice Wiki
Revision as of 10:14, 16 July 2018 by Sancho (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
OOw.png Вопросы по ООо Writer
Графика
Импорт, внешние ссылки и связи
Интерфейс пользователя
Набор и форматирование
Поиск и замена
Сохранение и печать
Стили и шаблоны
Страницы, оглавление и сноски
Таблицы
Другие вопросы

Все вопросы по поиску и замене символов через диалог Правка - Найти и заменить, а также вопросы автоматической замены и автодополнения слов.

Contents

Как удалить мягкие переносы?

Чтобы удалить все мягкие переносы, выделите какой-нибудь один мягкий перенос, нажмите Ctrl F, и нажмите "заменить всё" (поле для замены оставьте пустым).

3.1

Как заменить начертание шрифта в выделенном фрагменте, чтобы все символы одного шрифта стали другого цвета?

Диалог "Найти и заменить", использовать кнопку "Формат" и регулярное выражение. Replacefontscolor.png

2.4

Как пробелы в числах заменить на неразрывные пробелы?

В тексте разряды в числах разделяются пробелами. Для замены всех пробелов в числах на неразрывный пробел нужно воспользоваться заменой с регулярными выражениями.

  • Для этого в диалоге "Найти и заменить" нужно нажать кнопку "Больше параметров" и установить флажок "регулярные выражения". Затем
  • - в строке поиска ввести ([:digit:]) ([:digit:]{3})
  • - в строке замены ввести $1 $2

Примечание: В данном диалоге нельзя непосредственно ввести символ "неразрывный пробел". Но его можно предварительно ввести в документ, вырезать в документе и вставить в нужном месте в строке поиска или замены. Таким образом в строке $1 $2 на самом деле не пробел, а именно "неразрывный пробел".

3.0

Как найти символы абзаца, разрыва строки, табуляции?

Для поиска таких символов необходимо использовать регулярные выражения. В диалоге поиска и замены регулярные выражения включаются через "Дополнительные настройки".

Используйте для поиска следующие регулярные выражения:

  • символ разрыва строки - "\n", однако при использовании в поле замены это выражение будет обозначать символ абзаца;
  • символ абзаца - "$";
  • символ табуляции - "\t".

Подробнее см.: система помощи, закладка "Индекс", искомое выражение -- "регулярные выражения;список".


2.4

Как заменить символы разрыва строки на символы абзаца?

Последовательность действий при поиске и замене символов разрыва строк

Как сказано выше для поиска таких символов используются регулярные выражения (взведите флаг "Регулярное выражение" ).

Часто возникает задача заменить в тексте, например взятом из окна браузера, символы "\n" на символы абзаца для более корректного форматирования текста.

Попытка поставить в качестве замены символ "$" (конец абзаца) ни к чему хорошему, кроме вставки собственно символа "$", не приводит !

Как оказалось диалог поиска находит эти символы "\n", но и в качестве замены, в нашем случае, тоже надо указывать "\n" !!


3.2

Как составлять регулярные выражения?

Общие принципы написания регулярных выражений описаны в этой статье: http://ru.wikipedia.org/wiki/Регулярные_выражения

В ООо реализована поддержка регулярных выражений в поиске и замене. Для их использования ознакомьтесь со Списком регулярных выражений.

2.4

Как преобразовать тексты, набранные в старых текстовых (DOS), где в конце каждой строки стоят Enter'ы

Такие тексты характерны тем, что разделителями "абзацев" являются пустые абзацы.

  1. В этом случае нужно найти эти "истинные" разделители абзацев. Для этого регулярными выражениями заменить "символ абзаца в начале строки" на не встречающуюся в данном документе последовательность символов. Например "QWERTYTREWQ". Производится поиск "символа абзаца в начале строки". Регулярное выражение для этого (строка Найти): ^$ В строке Заменить вводим QWERTYTREWQ
  2. Далее - заменяем все символы абзаца на пробел. Т.е. в случае с "¶" - искать надо '$'. Регулярное выражение для этого (строка Найти): $ В строке Заменить просто нажимаем ПРОБЕЛ.
  3. Далее - делаем обратную замену "QWERTYTREWQ" на символ абзаца. Регулярное выражение для этого (строка Найти): QWERTYTREWQ В строке Заменить вводим \n

Если же переносы строк в абзацах отформатированы "мягким переводом строки" (Shift-Enter), то второй шаг немного меняется. В этом случае регулярное выражение в строке Найти будет \n В строке Заменить так же просто нажимаем ПРОБЕЛ.

2.4

Как узнать количество символов в документе без пробелов?

Последовательность действий для подсчета непробельных символов

Для подсчёта слов и символов в документе используется команда Сервис - Количество слов   (выводятся данные по выделенному фрагменту (фрагментам) и по всему документу). Используйте для поиска регулярное выражение "[:space:]*" (любое количество идущих подряд пробелов) и кнопку "Найти все". Искомое количество непробельных символов получите в результате вычитания двух значений.

2.3

Как найти/заменить двойной пустой абзац? Я уже знаю про регулярные выражения, но всё равно не получается

Выдержка из помощи по регулярным выражениям: "Осуществлять поиск регулярных выражений можно только в пределах одного абзаца. То есть, поиск одного выражения в одном абзаце, а в следующем абзаце — другого выражения невозможен."

Но решение есть:

  • можно использовать промежуточные подстановки. Например: заменить сначала все ^$ на "ABZ", а потом искать/обрабатывать "ABZABZ".
Documentation note.png Внимание! Весь документ окажется в одном параграфе, а у OpenOffice.org существует ограничение на величину параграфа, не применяйте такой метод к объемным документам.
  • можно воспользоваться макросом из книги "Useful Macro Information For OpenOffice By Andrew Pitonyak"

2.3

Принять участие в проекте!
Общие вопросы
Форматирование ответов
Вопросы использования
Популярные разделы:
Writer: Часто задаваемые вопросы
Calc: Часто задаваемые вопросы
Орфография и грамматика
Полезности и секреты
Главная страница

Пишу диалог, с новой строки после табуляции ставлю "--"(длинное тире), дописываю абзац, жму ентер - выскакивает меню маркированного списка. Как отключить?

Сервис - Автозамена - Параметры   

или использовать CTRL+Z

2.3

Автозамена подставляет длинное тире вместо среднего.

Если в свойствах абзаца стоит русский или украинский языки, то минус заменится на длинное тире (em dash), по правилам типографики. В остальных языках используется среднее тире (en dash)

Отменить автозамену можно, используя CTRL+Z

2.3

Если в MS Word на выделенном слове зайти в контекстное меню, то там есть пункт "Синонимы". Есть ли что-нибудь подобное в ОО?

Выберите команду Сервис - Язык - Тезаурус   

2.3


Как менять варианты, предлагаемые функцией автодополнения?

Если в списке слов для автодополнения есть более одного варианта, нажмите клавиши CTRL+TAB для прокрутки доступных слов. Для прокрутки в обратном направлении используйте клавиши CTRL+SHIFT+TAB.

Посмотреть список вариантов можно через Сервис - Автозамена - Дополнение слов.   

Documentation note.png Пользователям Linux (KDE) необходимо учитывать, что данные сочетания клавиш

зарезервированы KDE для переключения между рабочими столами --Helen 17:09, 27 September 2007 (CEST)

2.3


Существует ли альтернативный способ поиска и замены для Writer?

Да.

Расширение от Tomas Bilek Alternative dialog Find & Replace for Writer

Доступна русская версия расширения

По сравнению с оригинальным диалогом поиска и замены добавлены:

  • Быстрый выбор шаблонов регулярных выражений
  • Возможность пакетной работы
  • Возможность менять стили в изменяемом тексте
  • Быстрый подсчёт числа повторений строки поиска в обрабатываемом тексте
  • ...

2.3

Как можно просмотреть список слов в тексте, которые не прошли проверку правописания?

Это можно сделать с помощью расширения Linguist, написанном на Python.

Расширение позволяет:

  • Составить список слов, не прошедших проверку орфографии
  • Составить список слов, присутствующих в тексте
  • Подсчитать количество слов и прочую статистическую информацию о тексте

2.3



Перейти к разделу: Writer | Calc | Общее | UI | Глоссарий | Принятые сокращения | Полезности | Содержание
Personal tools