Monday, September 26, 2016

Javascript - регулярные выражения против ручного парсинга и DOM

Я уже упоминал, о том как не просто парсить контент "сверстанный в Word". А жизнь всё подкидывает и подкидывает новые варианты "верстки", который ломает запрограммированный парсинг на раз.

В поисках решений пришел к выводу, что проще экспортировать документ в text, через соответствующий метод. Далее, используя регулярные выражения найти разделитель (дату) и дальше уже парсить остатки текста исходя из имеющихся данных.

На данный момент это оказалось самое работающее решение.

4 comments:

Александр Сальников said...

Неправильно ты, Дядя Федор, бутерброд жуешь...

Nikolay Kuznetsov said...

посему это?

Александр Сальников said...

Ну потому что... Регэкспы не для этого. Документ для парсинга подсунут структурированный, потому и парсить его надо через DOM. Ну или еще как-то так. Заодно и ошибки документа всплывут. А регэксп... Ну вот будет найдешь ты \d\d\.\d\d\.\d\d\d\d — а дальше? А вдруг там 8/3/2016?

Nikolay Kuznetsov said...

если бы структуированный - вопросов бы не было... а там такая мешанина тэгов, что ой.
Но дату, к счастью, выводят ровно.

Да можешь сам посмотреть http://neya.info