2 |
* Perl-Compatible Regular Expressions * |
* Perl-Compatible Regular Expressions * |
3 |
*************************************************/ |
*************************************************/ |
4 |
|
|
5 |
/* Copyright (c) 1997 University of Cambridge */ |
/* Copyright (c) 1997-1999 University of Cambridge */ |
6 |
|
|
7 |
#ifndef _PCRE_H |
#ifndef _PCRE_H |
8 |
#define _PCRE_H |
#define _PCRE_H |
10 |
/* Have to include stdlib.h in order to ensure that size_t is defined; |
/* Have to include stdlib.h in order to ensure that size_t is defined; |
11 |
it is needed here for malloc. */ |
it is needed here for malloc. */ |
12 |
|
|
13 |
|
#include <sys/types.h> |
14 |
#include <stdlib.h> |
#include <stdlib.h> |
15 |
|
|
16 |
|
/* Allow for C++ users */ |
17 |
|
|
18 |
|
#ifdef __cplusplus |
19 |
|
extern "C" { |
20 |
|
#endif |
21 |
|
|
22 |
/* Options */ |
/* Options */ |
23 |
|
|
24 |
#define PCRE_CASELESS 0x0001 |
#define PCRE_CASELESS 0x0001 |
25 |
#define PCRE_EXTENDED 0x0002 |
#define PCRE_MULTILINE 0x0002 |
26 |
#define PCRE_ANCHORED 0x0004 |
#define PCRE_DOTALL 0x0004 |
27 |
#define PCRE_MULTILINE 0x0008 |
#define PCRE_EXTENDED 0x0008 |
28 |
#define PCRE_DOTALL 0x0010 |
#define PCRE_ANCHORED 0x0010 |
29 |
#define PCRE_DOLLAR_ENDONLY 0x0020 |
#define PCRE_DOLLAR_ENDONLY 0x0020 |
30 |
#define PCRE_EXTRA 0x0040 |
#define PCRE_EXTRA 0x0040 |
31 |
#define PCRE_NOTBOL 0x0080 |
#define PCRE_NOTBOL 0x0080 |
32 |
#define PCRE_NOTEOL 0x0100 |
#define PCRE_NOTEOL 0x0100 |
33 |
|
#define PCRE_UNGREEDY 0x0200 |
34 |
|
#define PCRE_NOTEMPTY 0x0400 |
35 |
|
|
36 |
/* Exec-time error codes */ |
/* Exec-time and get-time error codes */ |
37 |
|
|
38 |
#define PCRE_ERROR_NOMATCH (-1) |
#define PCRE_ERROR_NOMATCH (-1) |
39 |
#define PCRE_ERROR_BADREF (-2) |
#define PCRE_ERROR_NULL (-2) |
40 |
#define PCRE_ERROR_NULL (-3) |
#define PCRE_ERROR_BADOPTION (-3) |
41 |
#define PCRE_ERROR_BADOPTION (-4) |
#define PCRE_ERROR_BADMAGIC (-4) |
42 |
#define PCRE_ERROR_BADMAGIC (-5) |
#define PCRE_ERROR_UNKNOWN_NODE (-5) |
43 |
#define PCRE_ERROR_UNKNOWN_NODE (-6) |
#define PCRE_ERROR_NOMEMORY (-6) |
44 |
#define PCRE_ERROR_NOMEMORY (-7) |
#define PCRE_ERROR_NOSUBSTRING (-7) |
45 |
|
|
46 |
/* Types */ |
/* Types */ |
47 |
|
|
56 |
|
|
57 |
/* Functions */ |
/* Functions */ |
58 |
|
|
59 |
extern pcre *pcre_compile(const char *, int, const char **, int *); |
extern pcre *pcre_compile(const char *, int, const char **, int *, |
60 |
|
const unsigned char *); |
61 |
|
extern int pcre_copy_substring(const char *, int *, int, int, char *, int); |
62 |
extern int pcre_exec(const pcre *, const pcre_extra *, const char *, |
extern int pcre_exec(const pcre *, const pcre_extra *, const char *, |
63 |
int, int, int *, int); |
int, int, int, int *, int); |
64 |
|
extern int pcre_get_substring(const char *, int *, int, int, const char **); |
65 |
|
extern int pcre_get_substring_list(const char *, int *, int, const char ***); |
66 |
extern int pcre_info(const pcre *, int *, int *); |
extern int pcre_info(const pcre *, int *, int *); |
67 |
|
extern unsigned const char *pcre_maketables(void); |
68 |
extern pcre_extra *pcre_study(const pcre *, int, const char **); |
extern pcre_extra *pcre_study(const pcre *, int, const char **); |
69 |
extern const char *pcre_version(void); |
extern const char *pcre_version(void); |
70 |
|
|
71 |
|
#ifdef __cplusplus |
72 |
|
} /* extern "C" */ |
73 |
|
#endif |
74 |
|
|
75 |
#endif /* End of pcre.h */ |
#endif /* End of pcre.h */ |