51 #undef REG_ULOOKAROUND
61 #undef REG_UEMPTYMATCH
62 #undef REG_UIMPOSSIBLE
138 #define REG_UBACKREF 000001
139 #define REG_ULOOKAROUND 000002
140 #define REG_UBOUNDS 000004
141 #define REG_UBRACES 000010
142 #define REG_UBSALNUM 000020
143 #define REG_UPBOTCH 000040
145 #define REG_UBBS 000100
146 #define REG_UNONPOSIX 000200
147 #define REG_UUNSPEC 000400
149 #define REG_UUNPORT 001000
150 #define REG_ULOCALE 002000
151 #define REG_UEMPTYMATCH 004000
152 #define REG_UIMPOSSIBLE 010000
153 #define REG_USHORTEST 020000
180 #define REG_BASIC 000000
181 #define REG_EXTENDED 000001
182 #define REG_ADVF 000002
183 #define REG_ADVANCED 000003
184 #define REG_QUOTE 000004
185 #define REG_NOSPEC REG_QUOTE
186 #define REG_ICASE 000010
187 #define REG_NOSUB 000020
188 #define REG_EXPANDED 000040
189 #define REG_NLSTOP 000100
190 #define REG_NLANCH 000200
191 #define REG_NEWLINE 000300
192 #define REG_PEND 000400
193 #define REG_EXPECT 001000
194 #define REG_BOSONLY 002000
195 #define REG_DUMP 004000
196 #define REG_FAKE 010000
197 #define REG_PROGRESS 020000
204 #define REG_NOTBOL 0001
205 #define REG_NOTEOL 0002
206 #define REG_STARTEND 0004
207 #define REG_FTRACE 0010
208 #define REG_MTRACE 0020
209 #define REG_SMALL 0040
218 #define REG_NOMATCH 1
220 #define REG_ECOLLATE 3
222 #define REG_EESCAPE 5
223 #define REG_ESUBREG 6
228 #define REG_ERANGE 11
229 #define REG_ESPACE 12
230 #define REG_BADRPT 13
231 #define REG_ASSERT 15
232 #define REG_INVARG 16
234 #define REG_BADOPT 18
235 #define REG_ETOOBIG 19
236 #define REG_ECOLORS 20
241 #define REG_PREFIX (-1)
242 #define REG_EXACT (-2)
246 #define regoff_t pg_regoff_t
247 #define regex_t pg_regex_t
248 #define regmatch_t pg_regmatch_t
257 int flags,
Oid collation);
260 size_t nmatch,
regmatch_t pmatch[],
int flags);
269 int cflags,
Oid collation,
int errcode(int sqlerrcode)
bool RE_compile_and_execute(text *text_re, char *dat, int dat_len, int cflags, Oid collation, int nmatch, regmatch_t *pmatch)
size_t pg_regerror(int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size)
int pg_regprefix(regex_t *re, pg_wchar **string, size_t *slength)
int pg_regcomp(regex_t *re, const pg_wchar *string, size_t len, int flags, Oid collation)
regex_t * RE_compile_and_cache(text *text_re, int cflags, Oid collation)
int pg_regexec(regex_t *re, const pg_wchar *string, size_t len, size_t search_start, rm_detail_t *details, size_t nmatch, regmatch_t pmatch[], int flags)
void pg_regfree(regex_t *re)