Да, это боль работы с WordML, скажем, с использованием объектной модели слова.
К сожалению, я не нашел ничего, что облегчает это (openxml sdk, Aspose и т. Д., Кажется, все, по сути, просто оборачивают WordML xml в тонкий шпон).
Вы МОЖЕТЕ выполнить некоторую ограниченную предварительную обработку на ML и разрешить множество вещей (например, все эти элементы rsidRPr и т. Д.), Но все еще будет сложно найти достаточно элементов форматирования, чтобы последовательно иметь возможность искать текст.
С другой стороны, вы можете использовать XPATH для извлечения просто элементов w: t, затем объединить их все вместе и искать результаты, но тогда у вас возникнет проблема, как узнать, где в документе вы на самом деле нашли то, что в итоге нашли живет.
если вас это не волнует (например, вы просто извлекаете данные), то это может быть самым быстрым решением.