SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » UDR библиотека для работы с регулярными выражениями (черная пятница)
UDR библиотека для работы с регулярными выражениями [сообщение #1059] Fri, 25 November 2022 15:23 Переход к следующему сообщению
shalamyansky в настоящее время не в онлайне  shalamyansky
Сообщений: 34
Зарегистрирован: August 2022
Member
Очередной велосипед, наверное. Но, может, кому пригодится.

https://github.com/shalamyansky/fb_regex

Re: UDR библиотека для работы с регулярными выражениями [сообщение #1062 является ответом на сообщение #1059] Sat, 26 November 2022 21:16 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 105
Зарегистрирован: June 2022
Senior Member
Ну не велосипед конечно. Вещь полезная. Но есть два замечания:
1. Udr библиотеки надо распространять с SQL скринами установки
2. У вас функции и процедуры можно четко классифицировать как имеющие отношения к регуляркам, в таком случае рекомендуется все их засунуть в psql пакет
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1063 является ответом на сообщение #1062] Sat, 26 November 2022 22:20 Переход к предыдущему сообщениюПереход к следующему сообщению
shalamyansky в настоящее время не в онлайне  shalamyansky
Сообщений: 34
Зарегистрирован: August 2022
Member
Дык... даже не знаю, что и сказать Smile

1. Скрипты установки есть как в установочном комплекте, и в readme на это указано, так и в исходных pas для лучшего понимания кода.

2. Все функции и процедуры сведены в один PSQL пакет regex, об этом говорится почти что в заголовке.

Будем считать, что я провел работу над ошибками и быстренько все исправил. Спасибо!
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1064 является ответом на сообщение #1063] Sun, 27 November 2022 00:17 Переход к предыдущему сообщениюПереход к следующему сообщению
ggreggory в настоящее время не в онлайне  ggreggory
Сообщений: 35
Зарегистрирован: July 2022
Member
imho, неплохо бы иметь где-нибудь коллекцию UDR наподобие того, как на ibase есть страничка с UDF. Как с точки зрения уже готовых расширений функций сервера, так и с точки зрения популяризации написания своих UDR, что их писать совсем не сложно.
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1088 является ответом на сообщение #1063] Mon, 05 December 2022 16:25 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 105
Зарегистрирован: June 2022
Senior Member
Цитата:
1. Скрипты установки есть как в установочном комплекте, и в readme на это указано, так и в исходных pas для лучшего понимания кода.
Мне кажется лучше в исходник включать install_pcre.sql, а не только в сам архив

Цитата:
2. Все функции и процедуры сведены в один PSQL пакет regex, об этом говорится почти что в заголовке.
Просмотрел. Глянул на доку ещё раз и понял почему. В примерах действительно видно, что это функции пакета. А в заголовках нет.

Цитата:
Routines
...
matches
Логичнее было бы, если бы заголовки назывались так

Цитата:
Routines
...
Procedure regex.matches
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1090 является ответом на сообщение #1059] Mon, 05 December 2022 16:42 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 105
Зарегистрирован: June 2022
Senior Member
Ну и https://github.com/shalamyansky/fb_regex/issues/1
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1141 является ответом на сообщение #1090] Thu, 15 December 2022 20:12 Переход к предыдущему сообщениюПереход к следующему сообщению
shalamyansky в настоящее время не в онлайне  shalamyansky
Сообщений: 34
Зарегистрирован: August 2022
Member
О, это ценно, спасибо!

Ошибку исправил, пожелания выполнил. Остался вопрос.

"Blob.close( Status ); // согласно документации при успешном закрытии вызывается release"

Согласно какой документации? Не смог найти документацию по UDR, кроме Вашей статьи про написание UDR на Паскале, за которую отдельное большое спасибо. На firebirdsql.org смотрел, на ibase.ru смотрел, на github.com/FirebirdSQL смотрел, где еще сокровенные источники?
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1142 является ответом на сообщение #1141] Thu, 15 December 2022 21:26 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 105
Зарегистрирован: June 2022
Senior Member
Вот https://www.ibase.ru/files/firebird/fbapi.html

Оно лежит в firebird/doc/Using_OO_API.html
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1143 является ответом на сообщение #1142] Thu, 15 December 2022 22:44 Переход к предыдущему сообщениюПереход к следующему сообщению
shalamyansky в настоящее время не в онлайне  shalamyansky
Сообщений: 34
Зарегистрирован: August 2022
Member
О! А я и не вижу... И даже в поставку входит. Все как всегда. И снова спасибо!
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1149 является ответом на сообщение #1143] Fri, 16 December 2022 19:58 Переход к предыдущему сообщениюПереход к следующему сообщению
shalamyansky в настоящее время не в онлайне  shalamyansky
Сообщений: 34
Зарегистрирован: August 2022
Member
Таки нет. В указанном выше документе работа с IBlob описана, как и со всеми прочими интерфейсами, это есть. И вторая его часть посвящена созданию плагинов вообще. Но ничего нет про написание модуля UDR, как подплагина конкретного плагина udr. Даже слова такого нет - UDR.

Мне уже не актуально, я разобрался с Вашей помощью. Но для юношей, обдумывающих плагины, мне кажется, документ от разработчиков а ля "Writing UDR" был бы весьма полезен, даже необходим. Со всеми нюансами. Вот Вы, когда начинали разбираться, где черпали вдохновение информацию? В поставке Firebird есть 3 примера, но уж больно лаконичные. Там даже не сказано нигде, а что это собственно, такое, что тут собирается.
Re: UDR библиотека для работы с регулярными выражениями [сообщение #1150 является ответом на сообщение #1149] Fri, 16 December 2022 21:16 Переход к предыдущему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 105
Зарегистрирован: June 2022
Senior Member
В том то и прикол что нигде. Под рукой были только примеры и документация по обьектному апи. Остальное в ходе экспериментов выяснил. Потом статью набросал. Вот потому там и ошибки есть. А вот потом написал несколько реальных удр. Сейчас поднабрался опыта и вижу что в той статье поправить надо
Предыдущая тема: Проектирование БД: таблица прайсов
Следующая тема: Клиент fb3 на линуксе
Переход к форуму:
  


Текущее время: Sat Feb 04 01:34:38 MSK 2023

Общее время, затраченное на создание страницы: 0.01796 секунд