parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Парсер

Сухроб Хусамов 09.01.2008 22:01

Все сделано на парсере. Конечно есть недостатки. Где без них. Но кое-что исправимо.

Странно что никто не использует сей способ. А как узнает - тут же внедряет в свой двигатель:) Наверное стоит о нем написать статью.

Итак, способ очень прост. Даже изучать DOC-формат не нужно.

Делаем файл в ворде с учетом некоторых несложных правил (типа списками не пользоваться или с осторожностью их использовать).
Сохраняем в формате... WordML. Или попусту в XML.
И все.

Этот XML разбирается с помощью класса msword.p (при желании могу поделиться).
И на выходе выдается уже более удобный XML без всякого мусора. И картинки тоже.

Позже я хочу сделать конвертер из DOC-формата. Ибо заставлять клиента хранить статьи в формате XML не совсем гуманно (хотя они особо не жалуются, ибо очень им нравится возможность не париться с картинками).

Есть еще несколько неприятных нюансов, связанные с тем, что формат WordML очень сложен и порой вместо текста там записывается что-то на внутреннем языке программирования. Например, бывает что вместо того, чтобы просто прописать ссылку, там записывается целая программа, генерирующая эту ссылку. В результате у меня эта ссылка превращается в обычный текст. Поэтому нормальный конвертер из DOC во что-то XML-евское нужен как логичное развитие этой темы.