forked from ktaranov/sqlserver-kit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinstallRegexAssembly.sql
More file actions
164 lines (141 loc) · 3.81 KB
/
Copy pathinstallRegexAssembly.sql
File metadata and controls
164 lines (141 loc) · 3.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
sp_configure 'clr enabled', 1
RECONFIGURE WITH OVERRIDE
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExOptionEnumeration') )
DROP FUNCTION dbo.RegExOptionEnumeration
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExSplit') )
DROP FUNCTION dbo.RegExSplit
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExEscape') )
DROP FUNCTION dbo.RegExEscape
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExReplace') )
DROP FUNCTION dbo.RegExReplace
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExReplacex') )
DROP FUNCTION dbo.RegExReplacex
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExIndex') )
DROP FUNCTION dbo.RegExIndex
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExIsMatch') )
DROP FUNCTION dbo.RegExIsMatch
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExMatch') )
DROP FUNCTION dbo.RegExMatch
go
IF EXISTS ( SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'dbo.RegExMatches') )
DROP FUNCTION dbo.RegExMatches
go
CREATE FUNCTION RegExOptionEnumeration
(
@IgnoreCase bit,
@MultiLine bit,
@ExplicitCapture bit,
@Compiled bit,
@SingleLine bit,
@IgnorePatternWhitespace bit,
@RightToLeft bit,
@ECMAScript bit,
@CultureInvariant bit
)
returns int
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExOptionEnumeration
go
CREATE FUNCTION RegExIsMatch
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Options int
)
RETURNS BIT
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExIsMatch
GO
CREATE FUNCTION RegExIndex
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Options int
)
RETURNS int
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExIndex
GO
CREATE FUNCTION RegExMatch
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Options int
)
RETURNS NVARCHAR(MAX)
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExMatch
GO
CREATE FUNCTION RegExEscape
(
@Input NVARCHAR(MAX)
)
RETURNS NVARCHAR(MAX)
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExEscape
GO
CREATE FUNCTION [dbo].[RegExSplit]
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Options int
)
RETURNS TABLE (Match NVARCHAR(MAX))
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExSplit
GO
CREATE FUNCTION [dbo].[RegExReplace]
(
@Input NVARCHAR(MAX),
@Pattern NVARCHAR(4000),
@Repacement NVARCHAR(MAX)
)
RETURNS NVARCHAR(MAX)
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExReplace
GO
CREATE FUNCTION [dbo].[RegExReplaceX]
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Repacement NVARCHAR(MAX),
@Options int
)
RETURNS NVARCHAR(MAX)
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExReplacex
GO
CREATE FUNCTION [dbo].[RegExMatches]
(
@Pattern NVARCHAR(4000),
@Input NVARCHAR(MAX),
@Options int
)
RETURNS TABLE (Match NVARCHAR(MAX), MatchIndex INT, MatchLength INT)
AS EXTERNAL NAME
RegexFunction.[SimpleTalk.Phil.Factor.RegularExpressionFunctions].RegExMatches
GO