Створення сайтів - студія веб-дизайну WebStudio2U Контактні дані веб-студії WebStudio2U RSS стрічка веб-студії WebStudio2U Мапа сайту Авторизація

Парсери. Перетворюємо текст в HTML таблицю

Парсери. Перетворимо текст в HTML таблицюУ процесі роботи над веб-сайтами, розробники часто зіштовхуються із проблемою коректного перекладу тексту в HTML таблиці. У цій статті фахівці студії web-дизайну WebStudio2U поділяться досвідом написання найпростішого текстового парсера. Ми розповімо про те, як за 15 хвилин написати програму мовою програмування Delphi, що буде перетворювати текст із роздільниками в HTML таблицю. Дана стаття призначена для користувачів, що мають мінімальні знання з Delphi.

Для початку, помістимо на форму два компоненти Memo (mmo1 і mmo2) і один компонент Button (btn1). Тепер перейдемо до редагування значень параметрів компонентів за допомогою панелі Object Inspector. У компонентів класу TMemo змінимо значення параметра ScrollBars на ssBoth і відредагуємо значення параметра Lines - заберемо з тексту назву компонента. Змінимо значення параметра Caption для кнопки на "Створити таблицю". (див. рис. 1).

Рис.1Парсери. Перетворимо текст в HTML таблицю

Двічі клацаємо на кнопку btn1 і заміняємо процедуру на наведену нижче:

Для роботи цього коду необхідно додати функцію яка буде розбивати роздільником рядок на масив рядків. Код функції вставляємо вище коду процедури обробки натискання на кнопку.

От у принципі й усе. Компілюємо програму (F9).

Передбачається, що вихідний текст буде міститися в mmo1 а після обробки HTML таблиця буде виводиться в mmo2.

Для зручності, ми додали ще необов'язковий оброблювач натискання сполучення клавіш Ctrl+A на компоненті mmo2 (Подія onKeyDown).

Сам оброблювач події onKeyDown компонента mmo2

Така проста, але дуже корисна програма стала в нагоді при написанні статті Найпопулярніші пошукові запити 2009 року. Дані копіювалися через буфер обміну в Excel, там підготовлялися, потім вставлялися в mmo1 (після копіювання в Excel текст автоматично перетворювався в текст із роздільником - знак табуляції) і за допомогою програми перетворювалися в HTML таблицю.

Якщо виникнуть питання, пишіть, з радістю відповімо!

P.S. Для роботи процедури копіювання в буфер обміну знадобитися додати модуль Clipbrd у список модулів, що підключаються, (список uses на самому початку програмного коду)

P.P.S. Саму програму з вихідними кодами можна скачати тут.

Теги:
парсер, html таблиця, текст в таблицю, delphi, текст з роздільниками, код, програма, пишемо програму, парсер тексту