12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- {*************************************************
- * Perl-Compatible Regular Expressions *
- *************************************************}
- { Copyright (c) 1997-2000 University of Cambridge }
- {
- * @file include/pcreposix.h
- * @brief PCRE definitions
- }
- { This is the header for the POSIX wrapper interface to the PCRE Perl-
- Compatible Regular Expression library. It defines the things POSIX says should
- be there. I hope. }
- { Have to include stdlib.h in order to ensure that size_t is defined. }
- { Options defined by POSIX. }
- const
- { Ignore case }
- REG_ICASE = $01;
- { Don't match newlines with wildcards }
- REG_NEWLINE = $02;
- { Don't match BOL }
- REG_NOTBOL = $04;
- { Don't match EOL }
- REG_NOTEOL = $08;
- { These are not used by PCRE, but by defining them we make it easier
- to slot PCRE into existing programs that make POSIX calls. }
- { UNUSED! }
- REG_EXTENDED = 0;
- { UNUSED! }
- REG_NOSUB = 0;
- { Error values. Not all these are relevant or used by the wrapper. }
- type
- pc_error = (
- REG_ASSERT = 1, { internal error ? }
- REG_BADBR, { invalid repeat counts in } {}
- REG_BADPAT, { pattern error }
- REG_BADRPT, { ? * + invalid }
- REG_EBRACE, { unbalanced } {}
- REG_EBRACK, { unbalanced [] }
- REG_ECOLLATE, { collation error - not relevant }
- REG_ECTYPE, { bad class }
- REG_EESCAPE, { bad escape sequence }
- REG_EMPTY, { empty expression }
- REG_EPAREN, { unbalanced () }
- REG_ERANGE, { bad range inside [] }
- REG_ESIZE, { expression too big }
- REG_ESPACE, { failed to get memory }
- REG_ESUBREG, { bad back reference }
- REG_INVARG, { bad argument }
- REG_NOMATCH { match failed }
- );
- { The structure representing a compiled regular expression. }
- regex_t = record
- re_pcre: Pointer;
- re_nsub, re_erroffset: size_t;
- end;
-
- Pregex_t = ^regex_t;
- { The structure in which a captured offset is returned. }
- regoff_t = Integer;
- regmatch_t = record
- rm_so, rm_eo: regoff_t;
- end;
- { The functions }
- {extern int regcomp(regex_t *, const char *, int);
- extern int regexec(regex_t *, const char *, size_t, regmatch_t *, int);
- extern size_t regerror(int, const regex_t *, char *, size_t);
- extern void regfree(regex_t *);}
|