Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PCRESAMPLE(3)		    Library Functions Manual		   PCRESAMPLE(3)

NAME
     PCRE - Perl-compatible regular expressions

PCRE SAMPLE PROGRAM
     A	simple,  complete  demonstration  program, to get you started with using
     PCRE, is supplied in the file pcredemo.c in the PCRE distribution. A  list-
     ing  of  this program is given in the pcredemo documentation. If you do not
     have a copy of the PCRE distribution, you can save this listing to  re-cre-
     ate pcredemo.c.

     The demonstration program, which uses the original PCRE 8-bit library, com-
     piles  the  regular  expression  that is its first argument, and matches it
     against the subject string in its second argument. No PCRE options are set,
     and default character tables are used. If matching  succeeds,  the  program
     outputs the portion of the subject that matched, together with the contents
     of any captured substrings.

     If  the -g option is given on the command line, the program then goes on to
     check for further matches of the same regular expression in the  same  sub-
     ject string. The logic is a little bit tricky because of the possibility of
     matching an empty string. Comments in the code explain what is going on.

     If  PCRE  is  installed in the standard include and library directories for
     your operating system, you should be able to compile the demonstration pro-
     gram using this command:

       gcc -o pcredemo pcredemo.c -lpcre

     If PCRE is installed elsewhere, you may need to add additional  options  to
     the  command  line.  For  example,  on a Unix-like system that has PCRE in-
     stalled in /usr/local, you can compile the demonstration  program	using  a
     command like this:

       gcc -o pcredemo -I/usr/local/include pcredemo.c \
	   -L/usr/local/lib -lpcre

     In  a  Windows  environment,  if  you  want  to statically link the program
     against a non-dll pcre.a file, you must uncomment	the  line  that  defines
     PCRE_STATIC  before  including  pcre.h, because otherwise the pcre_malloc()
     and pcre_free() exported functions will be declared  __declspec(dllimport),
     with unwanted results.

     Once  you	have  compiled and linked the demonstration program, you can run
     simple tests like this:

       ./pcredemo 'cat|dog' 'the cat sat on the mat'
       ./pcredemo -g 'cat|dog' 'the dog sat on the cat'

     Note that there is a much more comprehensive test program, called pcretest,
     which supports many more facilities for  testing  regular	expressions  and
     both  PCRE  libraries.  The pcredemo program is provided as a simple coding
     example.

     If you try to run pcredemo when PCRE is not installed in the  standard  li-
     brary  directory,	you may get an error like this on some operating systems
     (e.g. Solaris):

       ld.so.1: a.out: fatal: libpcre.so.0: open failed: No such file or  direc-
     tory

     This  is  caused  by the way shared library support works on those systems.
     You need to add

       -R/usr/local/lib

     (for example) to the compile command to get round this problem.

AUTHOR
     Philip Hazel
     University Computing Service
     Cambridge CB2 3QH, England.

REVISION
     Last updated: 10 January 2012
     Copyright (c) 1997-2012 University of Cambridge.

PCRE 8.30			 10 January 2012		   PCRESAMPLE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pcresample&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help