# 
# REGEXP_TABLE(5)                                   REGEXP_TABLE(5)
# 
# NAME
#        regexp_table - format of Postfix regular expression tables
# 
# SYNOPSIS
#        regexp:/etc/postfix/filename
# 
# DESCRIPTION
#        The Postfix mail system uses optional tables  for  address
#        rewriting or mail routing. These tables are usually in dbm
#        or db format. Alternatively, lookup tables can  be  speci-
#        fied in POSIX regular expression form.
# 
#        To  find out what types of lookup tables your Postfix sys-
#        tem supports use the postconf -m command.
# 
#        The general form of a Postfix regular expression table is:
# 
#        pattern result
#               When  pattern matches a search string, use the cor-
#               responding result.
# 
#        blank lines and comments
#               Empty lines and whitespace-only lines are  ignored,
#               as  are  lines whose first non-whitespace character
#               is a `#'.
# 
#        multi-line text
#               A logical line starts with non-whitespace  text.  A
#               line  that starts with whitespace continues a logi-
#               cal line.
# 
#        pattern1!pattern2 result
#               Matches pattern1 but not pattern2.
# 
#        Each pattern is a regular expression enclosed by a pair of
#        delimiters.  The regular expression syntax is described in
#        re_format(7).  The expression delimiter can be any charac-
#        ter,  except  whitespace  or  characters that have special
#        meaning (traditionally the forward  slash  is  used).  The
#        regular expression can contain whitespace.
# 
#        By default, matching is case-insensitive, although follow-
#        ing the second slash with an `i' flag will  reverse  this.
#        Other  flags are `x' (disable extended expression syntax),
#        and `m' (enable multi-line mode).
# 
#        Each pattern is applied to the entire lookup  key  string.
#        Depending  on  the  application,  that string is an entire
#        client hostname, an entire client IP address, or an entire
#        mail  address.   Thus,  no parent domain or parent network
#        search is done, and user@domain  mail  addresses  are  not
#        broken  up  into  their user and domain constituent parts,
#        nor is user+foo broken up into user and foo.
# 
#        Patterns are applied in the  order  as  specified  in  the
#        table,  until  a  pattern is found that matches the search
#        string.
# 
#        Substitution of substrings  from  the  matched  expression
#        into the result string is possible using $1, $2, etc.. The
#        macros in the result string may need to be written as ${n}
#        or $(n) if they aren't followed by whitespace.
# 
# EXAMPLE SMTPD ACCESS MAP
#        # Disallow sender-specified routing. This is a must if you relay mail
#        # for other domains.
#        /[%!@].*[%!@]/       550 Sender-specified routing rejected
# 
#        # Postmaster is OK, that way they can talk to us about how to fix
#        # their problem.
#        /^postmaster@/       OK
# 
#        # Protect your outgoing majordomo exploders
#        /^(.*)-outgoing@(.*)$/!/^owner-/         550 Use ${1}@${2} instead
# 
# EXAMPLE HEADER FILTER MAP
#        # These were once common in junk mail.
#        /^Subject: make money fast/     REJECT
#        /^To: friend@public\.com/       REJECT
# 
# SEE ALSO
#        pcre_table(5) format of PCRE tables
# 
# AUTHOR(S)
#        The regexp table lookup code was originally written by:
#        LaMont Jones
#        lamont@hp.com
# 
#        That code was based on the PCRE dictionary contributed by:
#        Andrew McNamara
#        andrewm@connect.com.au
#        connect.com.au Pty. Ltd.
#        Level 3, 213 Miller St
#        North Sydney, NSW, Australia
# 
#        Adopted and adapted by:
#        Wietse Venema
#        IBM T.J. Watson Research
#        P.O. Box 704
#        Yorktown Heights, NY 10598, USA
# 
#                                                                 1
# 
