# 
# 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:
# 
#        blanks and comments
#               Blank  lines  are  ignored,  as are lines beginning
#               with `#'.
# 
#        pattern result
#               When pattern matches a search string, use the  cor-
#               responding  result.  A  line that starts with white
#               space continues the preceding 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 string being  looked
#        up.   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 sub-strings from the matched expression is
# 
#                                                                 1
# 
# REGEXP_TABLE(5)                                   REGEXP_TABLE(5)
# 
#        possible using $1, $2, etc.. The macros in the replacement
#        string may need to be written as  ${n}  or  $(n)  if  they
#        aren't followed by whitespace.
# 
# EXAMPLES
#        # 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
# 
# 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
# 
#                                                                 2
# 
