1

Тема: Поиск слов, выделенных курсивом

Здравствуйте, есть такая проблема:
в большом документе нужно найти все куски текста выделенные курсивом и вставить символ, например  "#", в начале и в конце каждого куска.
Как бы это сделать?)

2

Re: Поиск слов, выделенных курсивом

найти и заменить изучить шибко нужно
там есть поиск по формату и придумать нужное

3

Re: Поиск слов, выделенных курсивом

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

4

Re: Поиск слов, выделенных курсивом

Chok пишет:

...найти все куски текста выделенные курсивом и вставить...в начале и в конце каждого куска...

Только макросом. Для такой заменаы надо использовать подстановочные знаки, но тогда нельзя искать фрагмент курсивом, только один знак. Макрос:

Sub Macro1()

    ' от начала активного документа
    With ActiveDocument.Range(0, 0)
        ' готовим поиск: наклонный шрифт
        With .Find
            .ClearFormatting
            .Replacement.ClearFormatting
            .Forward = True
            .MatchWildcards = False
            .Wrap = wdFindStop
            .Format = True
            .Font.Italic = True
        End With
        ' цикл поиска
        Do
            ' ищем
            .Find.Execute
            If .Find.Found <> True Then Exit Do ' не нашли
            ' вставка текста перед и после
            .InsertBefore Text:="#"
            .InsertAfter Text:="#"
            ' продолжаем поиск
            .Collapse Direction:=wdCollapseEnd
        Loop
    End With
    
End Sub
Chok пишет:

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

Здесь можно обойтись диалогом:
- слово - найти: <*>
- русское слово - найти: <[A-ЯЁа-яё]@>
- что-то в скобках - найти: \(*\)
- текст в скобках - найти: \([A-Za-zA-ЯЁа-яё]@\)
Во всех случаях активировать параметр "подстановочные знаки".

Макросы под заказ и готовый пакет - mtdmacro.ru

5

Re: Поиск слов, выделенных курсивом

Мне нужно было не только курсивом, но и жирные допустим и вставить знаки форматирования.
Потому я сделал так:
1. Выделить слова которые курсивом, для поиска которых достаточно включить постановочные знаки, нужный формат поиска включить и делать замену:
<(*)>
на для жирного
<b>\1</b>
или для курсива
<i>\1</i>
или для вашего вопроса
#\1#

2. Лишние # пробельное пространство # заменить на пробельное пространство.
Можно так:
#([^01-^32]@)#
\1
или для меня
\</b\>([^01-^32]@)\<b\>
\1