2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Обработка текста Word
Сообщение28.09.2013, 14:25 


17/04/11
70
Если бы у меня был документ .txt я мог бы с ним работать на Бейсике или Паскале - составил бы программу обработки текста, открыл файл и искал бы слова, буквы и прочее.
Но у меня документ .doc Подскажите, как обрабатывать этот документ? Например, искать слова, считать количество букв, менять курсив на обычный шрифт и прочее.
Задача в узкой постановке такая - У меня текст в Word, жирный шрифт. Строка содержит слова на латыни, а потом слова на кириллице. Работать построчно обременительно. Как по всему тексту слова на кириллице перевести в нежирный шрифт?
Макрокод? Visual Basic?

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение28.09.2013, 15:01 
Аватара пользователя


31/10/08
1244
oveka
1) Сохранить документ в *.docx разархивировать как zip. И можете работать как с *.txt, вернее это будет *.xml.
2) Если всё-же нужно с doc. То есть COM объекты для работы с офисом, а именно с документами word. В Delphi и в FreePascal COM объекты представлены не визуальными компонентами на палитре компонентов.
3) Можно на VBA макросы написать. VBA сокращение от Visual Basic for Applications‎

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение28.09.2013, 16:35 
Заслуженный участник
Аватара пользователя


18/01/13
12044
Казань
А расширенный (или специальный?не помню точно название) поиск разве не подходит? Указываете с строке поиска $[A-z]$ и меняете шрифт. Можно и макрос при этом записать.

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение28.09.2013, 20:02 
Заслуженный участник
Аватара пользователя


18/01/13
12044
Казань
Я посмотрела, это называется Подстановочные знаки. Там есть маски для поиска и т.п.

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 08:41 


17/04/11
70
Спасибо за участие всем.
Пример
conmutante m алг. коммутант
~ de anillo коммутант кольца
~ de bimоdulo коммутант бимодуля


Надо
conmutante m алг. коммутант
~ de anillo коммутант кольца
~ de bimоdulo коммутант бимодуля
Если бы обработка касалась одного слова, тогда создание макроса подошло бы.
В *.txt не пойдёт - там гасятся все аттрибуты.
У меня документ *.doc
Загрузить бы этот файл, искать русские слова и менять чёрное на серое. И немножко там курсива.
Обработать ввесь документ за одим ходом. Всего то и делов!

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 09:18 
Заслуженный участник
Аватара пользователя


18/01/13
12044
Казань
Легко поменять оформление однородных, похожих знаков. Заходите в Поиск и замена, ставите галочку на Подстановочные знаки, пишете в строке поиска [А-я], а в строке замены указываете нужное форматирование (например, "не полужирный").
Другое дело курсив. Как объяснить компу, что именно надо менять? Вы можете сформулировать четкие правила?

И, кстати, с помощью макроса можно поменять много слов. Я, например, записала себе макрос для оформления математических символов. Для этого создала несколько стилей (переменная, функция, индекс, степень и т.п.) Индексы и степени обозначаю по ходу набора. А потом макрос все латинские буквы обычного стиля превращает в стиль Переменная (курсив), а специальные наборы их ($\sin,\cos,\max,\ln,...$) - в стиль функции (прямой), чтобы они не портились при последующем применении макроса.

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 14:25 


17/04/11
70
Сейчас попробую [А-я]. Только не бабахнет ли оно и латинские похожие?

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 14:38 
Заслуженный участник
Аватара пользователя


18/01/13
12044
Казань
:D это для нас они "похожие". Помню, в каком-то онлайн документе не принимали мою фамилию, так как она уже была раньше. Так я просто заменила "о" русское на "о" латинское, и комп меня не узнал! А на печати, естественно, никакой разницы.
А что касается курсива, видимо, у вас есть какой-то набор слов-обозначений, можно заменить одно (с точкой), при этом записать макрос. А потом отредактировать его, скопировать и вставить нужные слова.

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 15:06 


17/04/11
70
Работает!!!
Можно ли дать не одиночный символ на замену, а список?
И какой тогда разделитель?

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 20:06 


17/04/11
70
Побуквенно обработал латинскую часть текста. Остались некоторые конфликтные
мелочи. Спасибо за консультацию.

 Профиль  
                  
 
 Re: Обработка текста Word
Сообщение29.09.2013, 20:09 
Заслуженный участник
Аватара пользователя


18/01/13
12044
Казань
Смотрите справку!

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group