В SQL Server 7/2000 нет встроенной поддержки работы с регулярными выражениями. Но SQL Server похволяет работать с COM-объектами. В VBScript (библиотека vbscript.dll) есть специальный объект для работы с регулярными выражениями - RegExp.
Ниже приведен код хранимой процедуры sp_RegExpReplace, которая позволяет заменять текст, удовлетворяющий заданному регулярному выражению на другой заданный текст в строке.
Текст процедуры sp_RegExpReplace:
|
CREATE PROCEDURE [dbo].sp_RegExpReplace @strIn1 varchar(8000), Возможно вы искали - Курсовая работа: Реляционные модели базы данных @strIn2 varchar(8000), @strPattern varchar(2000), @strOut varchar(8000) OUT AS DECLARE @object int, @hr int Похожий материал - Статья: Работа с библиотеками динамической компоновки (DLL) DECLARE @src varchar(255), @desc varchar(255) -- создаем объект RegExp для работы с регулярными выражениями EXEC @hr = sp_OACreate 'VBScript.RegExp', @object OUT IF (@hr <> 0) BEGIN EXEC sp_OAGetErrorInfo @object, @src OUT, @desc OUT Очень интересно - Статья: Реализация стиля Office XP SELECT hr=convert(varbinary(4),@hr), Source=@src, Description=@desc RETURN END EXEC @hr = sp_OASetProperty @object, 'Pattern', @strPattern IF (@hr <> 0) BEGIN Вам будет интересно - Реферат: Три принципа успешного электронного бизнеса EXEC sp_OAGetErrorInfo @object, @src OUT, @desc OUT SELECT hr=convert(varbinary(4),@hr), Source=@src, Description=@desc RETURN @hr END -- будет глобальная замена Похожий материал - Реферат: Особенности национальной интернет-статистики EXEC @hr = sp_OASetProperty @object, 'Global', 1 IF (@hr <> 0) BEGIN EXEC sp_OAGetErrorInfo @object, @src OUT, @desc OUT SELECT hr=convert(varbinary(4),@hr), Source=@src, Description=@desc |