На многих сайтах, особенно для программистов, куски кода на html-страницах выводятся с подсветкой. Как написать скрипт, который принимает на вход ссылку на файл с исходным текстом (.pas, .cpp), а возвращает этот же текст, в виде соответствующим образом отформатированного html-документа?
Добрый день, Геннадий! Ну общая идея будет такой: заменять ключевые слова (типа for, if и т.п.) на что-то вроде < font color="blue" > for < /font > . Делать это можно, например, с помоью регулярных выражений. Также стоит заменять табы на соответствующее число пробелов, перевод строки на < br >, и т.п. Опять же всё это делать рег. выражениями. Ну и не забывайте проверять, чтобы замена не происходила в том случае, если мы находимся внутри строки, т.е. чтобы в char* s = "qwertyu_for_asdfg"; никакой подсветки for не было.
Ответ отправлен: 27.08.2004, 23:30 Отправитель: dbf Отвечает West Morgan
Доброе время суток, Геннадий! Хороший вопрос, я постараюсь дать на него стоящий ответ и лучше выполню это в форме комментирования нижеследующего в приложении кода. для принятия "извне" в скрипт Perl текстовой информации (текстового файла) необходимо разместить на ХТМЛ странице верно созданную форму (см. приложение, раздел "форма"). после отправки пользователем на сервер Вашего текстового файла в скрипт Вы должны описать принимающий код в скрипте на Perl (см. приложение, раздел "получение текстового файла пользователя"). после получения текстовой информации скриптом, остаётся только обработать информацию, как ? например, используя регулярные выражения Perl - очень мощное средство работы с текстом (см. приложение, раздел "обработка данных"). ну, и после обработки - остаётся отправить пользователю в браузер "ответ"
вашей обработки - т.е. видоизменённый текст (см. приложение, раздел "
отправка обработанного текста") вот и всё ! больше интересных вопросов ! если что не понятно - пишите ещё - с удовольствием разъясню С уважением.
Приложение: Ответ отправлен: 28.08.2004, 03:20 Отправитель: West Morgan
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.