Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2016, 22:34   #1
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
Восклицание Подсветка синтаксиса

Всем Привет!

Требуется сформировать HTML-файл с подсветкой синтаксиса PHP (в файле будет код PHP)
Служебные слова (function, echo и т.д.) обрамить тэгами без проблем, "несколько" вопросов:
- пробелы заменять на "non-breaking space"?
- как обрамить содержимое в одинарных, двойных кавычках, скобках и т.д.? понятно что можно через цикл бежать по строке, искать открывшуюся и закрывшуюся кавычку и потом обрамлять, но наверника есть способ полегче, подозреваю что через регулярное выражение но в этом я не смыслю, подскажите как проще реализовать?
- как выцепить число (целое, с минусом, точкой и т.д.)?
- знак табуляции? искать и заменять "пробелами"?
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!

Последний раз редактировалось spirit-ua; 05.07.2016 в 22:42.
spirit-ua вне форума Ответить с цитированием
Старый 05.07.2016, 22:42   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Разве нет кучи готовых решений этого?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 05.07.2016, 22:45   #3
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Разве нет кучи готовых решений этого?
на счет кучи не знаю, интересует гибкость кода

понимаю что в гугл ткнет носом, интересует мнение тех кто сталкивался
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 06.07.2016, 00:28   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Я писал такую прогу для сайта delphikingdom лет так 10 назад.

Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 06.07.2016 в 00:35.
min@y™ вне форума Ответить с цитированием
Старый 06.07.2016, 08:09   #5
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
- пробелы заменять на "non-breaking space"?
Зачем?
Цитата:
- как обрамить содержимое в одинарных, двойных кавычках, скобках и т.д.? понятно что можно через цикл бежать по строке, искать открывшуюся и закрывшуюся кавычку и потом обрамлять, но наверника есть способ полегче, подозреваю что через регулярное выражение но в этом я не смыслю, подскажите как проще реализовать?
Разницы никакой. Все равно те же регулярные выражения будут разворачивать строку сканированием по символьно. Просто другой уровень абстракции. Функция Pos есть еще . Но на этапе реализации все равно будет цикл, перебирающий символы. И не важно кто его делает, Вы или библиотека. Хотя нет, библиотеку до Вас кто-то отлаживал и Ваших ошибок в ней точно нет.
Цитата:
- как выцепить число (целое, с минусом, точкой и т.д.)?
Очевидно число с чего-то должно начинаться. Это называется утиная типизация. Если там в том месте строки предполагается число (например в вызове функции) и объект похож на число, значит это число и есть. А если не предполагается (например в строковой константе) значит не число и не надо его раскрашивать
Цитата:
- знак табуляции? искать и заменять "пробелами"?
Я бы да, заменял пробелами, но только в том случае если у Вас моноширинный шрифт (это где все буковки одной ширины). Иначе просто нет смысла.
А в пятых, вопросы обрамления должны лежать в настройках проги. Типа надо преобразовывать в такой шрифт и убирать табуляцию или и так сойдет. Юзер сам настроит как надо.
SynEdit умеет и PHP и экспорт в HTML....
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 06.07.2016 в 08:55.
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подсветка синтаксиса => Патрон Общие вопросы Delphi 21 03.01.2016 11:48
Подсветка синтаксиса exelim Общие вопросы C/C++ 1 09.12.2013 21:50
подсветка синтаксиса slavarus Помощь студентам 0 15.05.2013 12:22
Подсветка синтаксиса Whiteweider Общие вопросы Delphi 5 04.12.2010 20:54
Подсветка синтаксиса Simply-Art Общие вопросы Delphi 2 29.05.2007 16:22