Difference between revisions of "Writer.Поиск и замена: Часто задаваемые вопросы"
(→Как заменить символы разрыва строки на символы абзаца?) |
|||
(18 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Ru Writer}} | {{Ru Writer}} | ||
+ | ''Все вопросы по поиску и замене символов через диалог Правка - Найти и заменить, а также вопросы автоматической замены и автодополнения слов.'' | ||
+ | |||
===Как удалить мягкие переносы?=== | ===Как удалить мягкие переносы?=== | ||
− | + | Чтобы удалить все мягкие переносы, выделите какой-нибудь один мягкий перенос, нажмите Ctrl F, и нажмите "заменить всё" (поле для замены оставьте пустым). | |
<p align=right>3.1</p> | <p align=right>3.1</p> | ||
=== Как заменить начертание шрифта в выделенном фрагменте, чтобы все символы одного шрифта стали другого цвета? === | === Как заменить начертание шрифта в выделенном фрагменте, чтобы все символы одного шрифта стали другого цвета? === | ||
− | + | Диалог "Найти и заменить", использовать кнопку "Формат" и регулярное выражение. | |
− | + | [[Image:Replacefontscolor.png]] | |
<p align=right>2.4</p> | <p align=right>2.4</p> | ||
===Как пробелы в числах заменить на неразрывные пробелы?=== | ===Как пробелы в числах заменить на неразрывные пробелы?=== | ||
− | + | В тексте разряды в числах разделяются пробелами. Для замены всех пробелов в числах на неразрывный пробел нужно воспользоваться заменой с регулярными выражениями. | |
− | + | *Для этого в диалоге "Найти и заменить" нужно нажать кнопку "Больше параметров" и установить флажок "регулярные выражения". Затем | |
− | + | * - в строке '''поиска''' ввести '''([:digit:]) ([:digit:]{3})''' | |
− | + | * - в строке '''замены''' ввести '''$1 $2''' | |
+ | |||
Примечание: В данном диалоге нельзя непосредственно ввести символ "неразрывный пробел". Но его можно предварительно ввести в документ, вырезать в документе и вставить в нужном месте в строке поиска или замены. Таким образом в строке '''$1 $2''' на самом деле не пробел, а именно "неразрывный пробел". | Примечание: В данном диалоге нельзя непосредственно ввести символ "неразрывный пробел". Но его можно предварительно ввести в документ, вырезать в документе и вставить в нужном месте в строке поиска или замены. Таким образом в строке '''$1 $2''' на самом деле не пробел, а именно "неразрывный пробел". | ||
<p align=right>3.0</p> | <p align=right>3.0</p> | ||
===Как найти символы абзаца, разрыва строки, табуляции? === | ===Как найти символы абзаца, разрыва строки, табуляции? === | ||
− | + | Для поиска таких символов необходимо использовать регулярные выражения. В диалоге поиска и замены регулярные выражения включаются через "Дополнительные настройки". | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | :Подробнее см.: система помощи, закладка "Индекс", искомое выражение -- "регулярные выражения;список". | + | Используйте для поиска следующие регулярные выражения: |
− | + | * символ разрыва строки - "'''\n'''", однако при использовании в поле замены это выражение будет обозначать символ абзаца; | |
+ | * символ абзаца - "'''$'''"; | ||
+ | * символ табуляции - "'''\t'''". | ||
+ | |||
+ | Подробнее см.: система помощи, закладка "Индекс", искомое выражение -- "регулярные выражения;список". | ||
+ | {{Tip|См. также [http://myooo.ru/content/view/39/43/ AltSearch - замечательный диалог поиска и замены]}} | ||
<p align=right>2.4</p> | <p align=right>2.4</p> | ||
===Как заменить символы разрыва строки на символы абзаца? === | ===Как заменить символы разрыва строки на символы абзаца? === | ||
− | : | + | [[Image:Oo_find_s_03.png|thumb|left|Последовательность действий при поиске и замене символов разрыва строк]] |
− | + | ||
− | + | Как сказано выше для поиска таких символов используются регулярные выражения (взведите флаг ''' "Регулярное выражение" '''). | |
+ | Часто возникает задача заменить в тексте, например взятом из окна браузера, символы "'''\n'''" на символы абзаца для более корректного форматирования текста. | ||
− | + | Попытка поставить в качестве замены символ "'''$'''" (конец абзаца) ни к чему хорошему, кроме вставки собственно символа "'''$'''", не приводит ! | |
+ | |||
+ | Как оказалось диалог поиска находит эти символы "'''\n'''", но и в качестве замены, в нашем случае, тоже надо указывать "'''\n'''" !! | ||
+ | |||
+ | <br clear="both" /> | ||
<p align=right>3.2</p> | <p align=right>3.2</p> | ||
===Как составлять регулярные выражения?=== | ===Как составлять регулярные выражения?=== | ||
− | + | Общие принципы написания регулярных выражений описаны в этой статье: http://ru.wikipedia.org/wiki/Регулярные_выражения | |
− | + | ||
− | Списком регулярных выражений]]. | + | В ООо реализована поддержка регулярных выражений в поиске и замене. Для их использования ознакомьтесь со [[Список регулярных выражений|Списком регулярных выражений]]. |
<p align=right>2.4</p> | <p align=right>2.4</p> | ||
===Как преобразовать тексты, набранные в старых текстовых (DOS), где в конце каждой строки стоят Enter'ы=== | ===Как преобразовать тексты, набранные в старых текстовых (DOS), где в конце каждой строки стоят Enter'ы=== | ||
− | + | Такие тексты характерны тем, что разделителями "абзацев" являются пустые абзацы. | |
− | + | ||
− | + | ||
− | + | ||
− | :Если же переносы строк в абзацах отформатированы "мягким переводом строки" (Shift-Enter), то второй шаг немного меняется. В этом случае регулярное выражение в строке Найти будет '''\n''' В строке Заменить так же просто нажимаем ПРОБЕЛ. | + | # В этом случае нужно найти эти "истинные" разделители абзацев. Для этого регулярными выражениями заменить "символ абзаца в начале строки" на не встречающуюся в данном документе последовательность символов. Например "QWERTYTREWQ". Производится поиск "символа абзаца в начале строки". Регулярное выражение для этого (строка Найти): '''^$''' В строке Заменить вводим '''QWERTYTREWQ''' |
+ | # Далее - заменяем все символы абзаца на пробел. Т.е. в случае с "¶" - искать надо '$'. Регулярное выражение для этого (строка Найти): '''$''' В строке Заменить просто нажимаем ПРОБЕЛ. | ||
+ | # Далее - делаем обратную замену "QWERTYTREWQ" на символ абзаца. Регулярное выражение для этого (строка Найти): '''QWERTYTREWQ''' В строке Заменить вводим '''\n''' | ||
+ | |||
+ | Если же переносы строк в абзацах отформатированы "мягким переводом строки" (Shift-Enter), то второй шаг немного меняется. В этом случае регулярное выражение в строке Найти будет '''\n''' В строке Заменить так же просто нажимаем ПРОБЕЛ. | ||
<p align=right>2.4</p> | <p align=right>2.4</p> | ||
Line 58: | Line 67: | ||
===Как узнать количество символов в документе без пробелов? === | ===Как узнать количество символов в документе без пробелов? === | ||
[[Image:Writer-Counted Blanks.gif|thumb|left|Последовательность действий для подсчета непробельных символов]] | [[Image:Writer-Counted Blanks.gif|thumb|left|Последовательность действий для подсчета непробельных символов]] | ||
− | + | Для подсчёта слов и символов в документе используется команда {{Ru_Menu|Сервис|Количество слов}}(выводятся данные по выделенному фрагменту (фрагментам) и по всему документу). | |
− | + | Используйте для поиска регулярное выражение "'''[:space:]*'''" (любое количество идущих подряд пробелов) и кнопку "'''Найти все'''". | |
− | + | Искомое количество непробельных символов получите в результате вычитания двух значений. | |
<br clear="both" /> | <br clear="both" /> | ||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
===Как найти/заменить двойной пустой абзац? Я уже знаю про регулярные выражения, но всё равно не получается=== | ===Как найти/заменить двойной пустой абзац? Я уже знаю про регулярные выражения, но всё равно не получается=== | ||
− | + | Выдержка из помощи по регулярным выражениям: "'''''Осуществлять поиск регулярных выражений можно только в пределах одного абзаца. То есть, поиск одного выражения в одном абзаце, а в следующем абзаце — другого выражения невозможен.'''''" | |
− | + | Но решение есть: | |
− | + | * можно использовать промежуточные подстановки. Например: заменить сначала все ^$ на "ABZ", а потом искать/обрабатывать "ABZABZ". | |
− | + | {{Note|Внимание! Весь документ окажется в одном параграфе, а у OpenOffice.org существует ограничение на величину параграфа, не применяйте такой метод к объемным документам.}} | |
− | + | * можно воспользоваться макросом из книги "Useful Macro Information For OpenOffice By Andrew Pitonyak" | |
− | + | ||
− | + | ||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
{{RuРазделыFAQ}} | {{RuРазделыFAQ}} | ||
===Пишу диалог, с новой строки после табуляции ставлю "--"(длинное тире), дописываю абзац, жму ентер - выскакивает меню маркированного списка. Как отключить?=== | ===Пишу диалог, с новой строки после табуляции ставлю "--"(длинное тире), дописываю абзац, жму ентер - выскакивает меню маркированного списка. Как отключить?=== | ||
− | + | {{Ru_Menu|Сервис|Автозамена|Параметры}} | |
− | + | ||
+ | или использовать CTRL+Z | ||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
===Автозамена подставляет длинное тире вместо среднего.=== | ===Автозамена подставляет длинное тире вместо среднего.=== | ||
− | + | Если в свойствах абзаца стоит русский или украинский языки, то минус заменится на длинное тире (em dash), по правилам типографики. В остальных языках используется среднее тире (en dash) | |
− | + | ||
+ | Отменить автозамену можно, используя CTRL+Z | ||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
===Если в MS Word на выделенном слове зайти в контекстное меню, то там есть пункт "Синонимы". Есть ли что-нибудь подобное в ОО?=== | ===Если в MS Word на выделенном слове зайти в контекстное меню, то там есть пункт "Синонимы". Есть ли что-нибудь подобное в ОО?=== | ||
− | + | Выберите команду {{Ru_Menu|Сервис|Язык|Тезаурус}} | |
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
Line 95: | Line 104: | ||
===Как менять варианты, предлагаемые функцией [[Глоссарий#Автодополнение | автодополнения]]? === | ===Как менять варианты, предлагаемые функцией [[Глоссарий#Автодополнение | автодополнения]]? === | ||
− | + | Если в списке слов для автодополнения есть более одного варианта, нажмите клавиши CTRL+TAB для прокрутки доступных слов. Для прокрутки в обратном направлении используйте клавиши CTRL+SHIFT+TAB. | |
− | + | ||
− | + | Посмотреть список вариантов можно через {{Ru_Menu|Сервис|Автозамена|Дополнение слов.}} | |
− | + | ||
− | + | ||
+ | {{Note|Пользователям Linux (KDE) необходимо учитывать, что данные сочетания клавиш | ||
+ | зарезервированы KDE для переключения между рабочими столами | ||
+ | --[[User:Helen russian|Helen]] 17:09, 27 September 2007 (CEST)}} | ||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
Line 107: | Line 116: | ||
===Существует ли альтернативный способ поиска и замены для Writer?=== | ===Существует ли альтернативный способ поиска и замены для Writer?=== | ||
− | + | Да. | |
− | + | ||
− | http://extensions.services.openoffice.org/project/AltSearch | + | Расширение от Tomas Bilek [http://extensions.services.openoffice.org/project/AltSearch Alternative dialog Find & Replace for Writer] |
− | :По сравнению с оригинальным диалогом поиска и замены добавлены: | + | |
+ | Доступна [http://myooo.ru/content/view/39/43/ русская версия расширения] | ||
+ | |||
+ | По сравнению с оригинальным диалогом поиска и замены добавлены: | ||
* Быстрый выбор шаблонов регулярных выражений | * Быстрый выбор шаблонов регулярных выражений | ||
* Возможность пакетной работы | * Возможность пакетной работы | ||
* Возможность менять стили в изменяемом тексте | * Возможность менять стили в изменяемом тексте | ||
− | * Быстрый | + | * Быстрый подсчёт числа повторений строки поиска в обрабатываемом тексте |
* ... | * ... | ||
− | |||
− | |||
− | |||
<p align=right>2.3</p> | <p align=right>2.3</p> | ||
===Как можно просмотреть список слов в тексте, которые не прошли проверку правописания?=== | ===Как можно просмотреть список слов в тексте, которые не прошли проверку правописания?=== | ||
− | + | Это можно сделать с помощью расширения [http://extensions.services.openoffice.org/project/Linguist Linguist], написанном на Python. | |
− | http://extensions.services.openoffice.org/project/Linguist | + | |
− | + | Расширение позволяет: | |
− | *Составить список слов, не прошедших проверку орфографии | + | * Составить список слов, не прошедших проверку орфографии |
− | *Составить список слов, присутствующих в тексте | + | * Составить список слов, присутствующих в тексте |
− | *Подсчитать количество слов и прочую статистическую информацию о тексте | + | * Подсчитать количество слов и прочую статистическую информацию о тексте |
<p align=right>2.3</p> | <p align=right>2.3</p> |
Latest revision as of 10:14, 16 July 2018
Вопросы по ООо Writer |
---|
Графика |
Импорт, внешние ссылки и связи |
Интерфейс пользователя |
Набор и форматирование |
Поиск и замена |
Сохранение и печать |
Стили и шаблоны |
Страницы, оглавление и сноски |
Таблицы |
Другие вопросы |
Все вопросы по поиску и замене символов через диалог Правка - Найти и заменить, а также вопросы автоматической замены и автодополнения слов.
Contents
- 1 Как удалить мягкие переносы?
- 2 Как заменить начертание шрифта в выделенном фрагменте, чтобы все символы одного шрифта стали другого цвета?
- 3 Как пробелы в числах заменить на неразрывные пробелы?
- 4 Как найти символы абзаца, разрыва строки, табуляции?
- 5 Как заменить символы разрыва строки на символы абзаца?
- 6 Как составлять регулярные выражения?
- 7 Как преобразовать тексты, набранные в старых текстовых (DOS), где в конце каждой строки стоят Enter'ы
- 8 Как узнать количество символов в документе без пробелов?
- 9 Как найти/заменить двойной пустой абзац? Я уже знаю про регулярные выражения, но всё равно не получается
- 10 Пишу диалог, с новой строки после табуляции ставлю "--"(длинное тире), дописываю абзац, жму ентер - выскакивает меню маркированного списка. Как отключить?
- 11 Автозамена подставляет длинное тире вместо среднего.
- 12 Если в MS Word на выделенном слове зайти в контекстное меню, то там есть пункт "Синонимы". Есть ли что-нибудь подобное в ОО?
- 13 Как менять варианты, предлагаемые функцией автодополнения?
- 14 Существует ли альтернативный способ поиска и замены для Writer?
- 15 Как можно просмотреть список слов в тексте, которые не прошли проверку правописания?
Как удалить мягкие переносы?
Чтобы удалить все мягкие переносы, выделите какой-нибудь один мягкий перенос, нажмите Ctrl F, и нажмите "заменить всё" (поле для замены оставьте пустым).
3.1
Как заменить начертание шрифта в выделенном фрагменте, чтобы все символы одного шрифта стали другого цвета?
Диалог "Найти и заменить", использовать кнопку "Формат" и регулярное выражение.
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'ы
Такие тексты характерны тем, что разделителями "абзацев" являются пустые абзацы.
- В этом случае нужно найти эти "истинные" разделители абзацев. Для этого регулярными выражениями заменить "символ абзаца в начале строки" на не встречающуюся в данном документе последовательность символов. Например "QWERTYTREWQ". Производится поиск "символа абзаца в начале строки". Регулярное выражение для этого (строка Найти): ^$ В строке Заменить вводим QWERTYTREWQ
- Далее - заменяем все символы абзаца на пробел. Т.е. в случае с "¶" - искать надо '$'. Регулярное выражение для этого (строка Найти): $ В строке Заменить просто нажимаем ПРОБЕЛ.
- Далее - делаем обратную замену "QWERTYTREWQ" на символ абзаца. Регулярное выражение для этого (строка Найти): QWERTYTREWQ В строке Заменить вводим \n
Если же переносы строк в абзацах отформатированы "мягким переводом строки" (Shift-Enter), то второй шаг немного меняется. В этом случае регулярное выражение в строке Найти будет \n В строке Заменить так же просто нажимаем ПРОБЕЛ.
2.4
Как узнать количество символов в документе без пробелов?
Для подсчёта слов и символов в документе используется команда Сервис - Количество слов (выводятся данные по выделенному фрагменту (фрагментам) и по всему документу).
Используйте для поиска регулярное выражение "[:space:]*" (любое количество идущих подряд пробелов) и кнопку "Найти все".
Искомое количество непробельных символов получите в результате вычитания двух значений.
2.3
Как найти/заменить двойной пустой абзац? Я уже знаю про регулярные выражения, но всё равно не получается
Выдержка из помощи по регулярным выражениям: "Осуществлять поиск регулярных выражений можно только в пределах одного абзаца. То есть, поиск одного выражения в одном абзаце, а в следующем абзаце — другого выражения невозможен."
Но решение есть:
- можно использовать промежуточные подстановки. Например: заменить сначала все ^$ на "ABZ", а потом искать/обрабатывать "ABZABZ".
Внимание! Весь документ окажется в одном параграфе, а у 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.
Посмотреть список вариантов можно через Сервис - Автозамена - Дополнение слов.
Пользователям 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 | Глоссарий | Принятые сокращения | Полезности | Содержание |