Форум — Development Библиотека для лексического анализа c++, поиск странного 0 2 Разыскивается библиотека, которая может делать практически тоже самое, что и Lex но в рантайме. Язык С/С++ Ссылка
Как насчет regex? Всмысле что такого есть в Lex кроме собственного парсера, автомата с состояниями и собственно регэкспов? arturpub ★★ (12.06.13 09:56:14 MSK) Показать ответ Ссылка
Ответ на: комментарий от arturpub 12.06.13 09:56:14 MSK Как насчет regex?Немного не то, на голых регекспах мне прийдется токен искать перебором всех возможных выражений. AF ★★★ (12.06.13 10:00:14 MSK) автор топика Показать ответ Ссылка
Ответ на: комментарий от AF 12.06.13 10:00:14 MSK Lex почти так и делает, рулесы по-порядку выполняются, как бы через |. Не сильно быстрее перебора. arturpub ★★ (12.06.13 10:08:51 MSK) Показать ответ Ссылка
Ответ на: комментарий от arturpub 12.06.13 10:08:51 MSK Думаешь, что если у двух лексем одинаковые префиксы, то lex будет их по нескольку раз перечитывать? Я что-то сомневаюсь AF ★★★ (12.06.13 10:20:49 MSK) автор топика Показать ответ Ссылка
Ответ на: комментарий от AF 12.06.13 10:20:49 MSK (abc|abd) тоже по-нескольку раз не перечитывает, я просто не думаю, что у тебя столько одинаковых префиксов и такие данные, что ты вылезешь за 5%-ю вероятность бэд-хита, чтобы стоило мутиться мутной мутью. arturpub ★★ (12.06.13 10:30:44 MSK) Показать ответ Ссылка
Ответ на: комментарий от arturpub 12.06.13 10:30:44 MSK (abc|abd) тоже по-нескольку раз не перечитываетАга, потому что таблица генерируется одна.мутиться мутной мутью.Да, была бы реальная задача, то не спрашивал бы а делал. А так мною движет любопытство и ничего более.Кстати пока нашелся http://www.benhanson.net/lexertl.html AF ★★★ (12.06.13 10:37:37 MSK) автор топика Ссылка
Не по теме: некоторое время назад мы делали проект по лексическому анализу. Модератор не я. Проприетарщина. Прикольная штучка. Deleted (12.06.13 11:25:48 MSK) Ссылка
Генерация правил для Lex в рантайме, затем exec lex, exec gcc, fork-pipe-exec johnson102 (12.06.13 20:12:09 MSK) Показать ответ Ссылка
Ответ на: комментарий от johnson102 12.06.13 20:12:09 MSK Генерация правил для Lex в рантайме, затем exec lex, exec gcc, fork-pipe-execужосboost::spiritАга, и внутри у него lexertl AF ★★★ (13.06.13 09:36:02 MSK) автор топика Ссылка
Так можно засунуть в PCRE: (?<1>pattern1)|(?<2>pattern2)... Автомат будет общий, а дальше по atoi(name) получаем тип. rymis ★★ (13.06.13 15:09:54 MSK) Показать ответ Ссылка
Ответ на: комментарий от rymis 13.06.13 15:09:54 MSK PCRE: (?<1>pattern1)|(?<2>pattern2)Спасибо, выглядит симпатично. AF ★★★ (13.06.13 15:42:11 MSK) автор топика Ссылка