Легкий regex синтаксический анализатор

Вот оно:

select type, cnt_value/sum_value as score 
 FROM (
  SELECT type, count (value) as cnt_value , sum (value) as sum_value 
    FROM Table1
   WHERE
    CODE = 'Q2' AND
   VALUE in (1,2)
   GROUP by type
)
9
задан Andrew Flanagan 20 November 2008 в 11:35
поделиться

3 ответа

Scintilla, компонент текстового редактора с открытым исходным кодом, использует механизм РЕ Ozan S. Yigit

Это было выбрано, потому что это находится в общественном достоянии (так никакая лицензия обременения) и очень легко. Но это немного ограничено... Если это имеет значение RESearch.cxx использует немного более современный код (преобразованный в C++, но это не должно быть сложно для преобразования его назад в C) с некоторыми незначительными расширениями, сделанными один (поддержка \d \s \w и т.д.).

Существуют некоторые альтернативы, как библиотеки регулярных выражений Henry Spencer.

Задумайтесь о нем, механизм Lua regex (в строковой библиотеке, gsub реализация среди других) является, вероятно, быстрым и маленьким также, как сам язык. Это имеет свои причуды и ограничения, но это очень применимо.

Параллельный проект LPeg может быть интересной альтернативой REs, все еще легкому все же мощный.

7
ответ дан 3 November 2019 в 00:05
поделиться

Учитывая Ваши легкие требования, я рекомендовал бы regex библиотеку Henry Spencer, которая реализует BRE POSIX и ДО regex разновидности. Это стандартные regex разновидности, с которыми Ваши пользователи уже вероятны знакомые.

0
ответ дан 3 November 2019 в 00:05
поделиться

Если Вы не потребуете полнофункциональной regex реализации (и она кажется, что Вы не делаете), затем, то код, написанный Brian Kernighan и Rob Pike, выделенным в Красивом Коде, будет, вероятно, работать на Ваши потребности. Я нашел статью доктора Dobb, которая я думаю, происхождение кода, который появляется в книге.

5
ответ дан 3 November 2019 в 00:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: