Есть ли способ «найти и заменить» текст внутри уравнений?
например: мне нужно заменить все $\hat v$ на $v$.
СMathJaxздесь не работает: Замените "вс^сверху" на "в".
решение1
Да, есть, но с ограничениями и неуклюже.
- Измените все уравнения на «Линейные» (вместо «Профессиональные»).
- Например, выберите все, перейдите на вкладку «Уравнение» и нажмите «Линейное» слева.
- Осторожность: Professional->Linear->Professional не обязательно оставляет ваши уравнения неизменными. Я заметил, что импорт MathML из MathJax-node часто меняется, когда я делаю круговой обход таким образом. Протестируйте свои уравнения, прежде чем выполнять массовое преобразование, или сделайте резервные копии!
- В одном из ваших уравнений линейного режима, выделите текст, который вы хотите найти (
v^
для $\hat v$ в линейном режиме). - Нажмите Alt+F11, чтобы открыть редактор VBA.
- Нажмите Ctl+G, чтобы перейти на панель «Немедленно».
Введите/вставьте эту строку и нажмите Enter:
Selection.Find.Text=Selection.Text
Это скопирует точный текст, который вы выбрали.в уравнениив поле "Find what" диалогового окна Find. Обычное копирование/вставка не сработает, поскольку вы получите обычные текстовые эквиваленты символов уравнения. Выделение текста за пределами уравнения также не сработает по той же причине.
- Закройте редактор VBA и вернитесь в Word.
- Нажмите Ctl+F. Вы увидите, что поле «Найти» заполнено символами уравнения, например,
v^
. Пока вы не измените этот текст, вы можете нажать «Найти далее», чтобы перейти к следующему уравнению, которое (1) содержит именно этот текст и (2) находится в линейном режиме. У меня это не работает, если уравнения построены в режиме («Профессиональный»). - Завершив поиск, верните уравнения в профессиональный режим.
Причина, по которой функция Find не работает в уравнениях так, как в основном тексте, заключается в том, что символы в уравнениях нового стиля не совпадают с соответствующими символами вне уравнений. СмотритеТехническая заметка Unicode (UTN) №28для точных символов и кодовых точек Unicode, используемых для операторов, иСписок Charbaseдля кодовых точек, используемых для символов сценария.
решение2
Я обнаружил, что внутри уравнения можно изменить некоторые его части на «Обычный текст» (не знаю, является ли этот перевод переводом, используемым Microsoft, я испаноязычный пользователь, и для нас это «Texto normal»). Таким образом, можно напрямую использовать поиск и замену.