60 #define REG_UBACKREF 000001
61 #define REG_ULOOKAROUND 000002
62 #define REG_UBOUNDS 000004
63 #define REG_UBRACES 000010
64 #define REG_UBSALNUM 000020
65 #define REG_UPBOTCH 000040
67 #define REG_UBBS 000100
68 #define REG_UNONPOSIX 000200
69 #define REG_UUNSPEC 000400
71 #define REG_UUNPORT 001000
72 #define REG_ULOCALE 002000
73 #define REG_UEMPTYMATCH 004000
74 #define REG_UIMPOSSIBLE 010000
75 #define REG_USHORTEST 020000
102 #define REG_BASIC 000000
103 #define REG_EXTENDED 000001
104 #define REG_ADVF 000002
105 #define REG_ADVANCED 000003
106 #define REG_QUOTE 000004
107 #define REG_NOSPEC REG_QUOTE
108 #define REG_ICASE 000010
109 #define REG_NOSUB 000020
110 #define REG_EXPANDED 000040
111 #define REG_NLSTOP 000100
112 #define REG_NLANCH 000200
113 #define REG_NEWLINE 000300
114 #define REG_PEND 000400
115 #define REG_EXPECT 001000
116 #define REG_BOSONLY 002000
117 #define REG_DUMP 004000
118 #define REG_FAKE 010000
119 #define REG_PROGRESS 020000
126 #define REG_NOTBOL 0001
127 #define REG_NOTEOL 0002
128 #define REG_STARTEND 0004
129 #define REG_FTRACE 0010
130 #define REG_MTRACE 0020
131 #define REG_SMALL 0040
140 #define REG_NOMATCH 1
142 #define REG_ECOLLATE 3
144 #define REG_EESCAPE 5
145 #define REG_ESUBREG 6
150 #define REG_ERANGE 11
151 #define REG_ESPACE 12
152 #define REG_BADRPT 13
153 #define REG_ASSERT 15
154 #define REG_INVARG 16
156 #define REG_BADOPT 18
157 #define REG_ETOOBIG 19
158 #define REG_ECOLORS 20
163 #define REG_PREFIX (-1)
164 #define REG_EXACT (-2)
174 int flags,
Oid collation);
177 size_t nmatch,
regmatch_t pmatch[],
int flags);
186 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)