Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 15, 2024 05:34:19

RomanTkach
Зарегистрирован: 2024-10-15
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Выделить цветом слово в docx документе

Есть документ word состоящий из таблиц в которых есть текст. Необходимо найти нужное слово в этом документе и выделить только это слово цветом.
Использую следующий код:
PythonВыделить код

 from docx import Document
word_to_find = "chuka"
 
def highlight_word_in_tables(doc, word_to_find):
    for table in doc.tables:
        for row in table.rows:
            for cell in row.cells:
                for paragraph in cell.paragraphs:
                    if word_to_find in paragraph.text:
                        for run in paragraph.runs:
                            if word_to_find in run.text:
                                run.font.highlight_color = 7
Проблема в том, что выделяется цветом не только это слово, но и вся ячейка, в которой текст с этим словом.

Офлайн

#2 Окт. 16, 2024 23:32:48

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9843
Репутация: +  853  -
Профиль   Отправить e-mail  

Выделить цветом слово в docx документе

Выведи на экран каждый run.text . Если это не слово, а большая (или меньшая) структура какая-то, то надо сначала на слова разложить (или в слова объединить) её, а потом понять, как выделить одно слово получившееся.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version