Postfix PCRE サポート


PCRE (Perl Compatible Regular Expressions; Perl 互換正規表現) マップサポート

オプションの "pcre" マップタイプを使うと、\s は空白で \S は非空白文字 といった、 PCRE 形式の表記法で正規表現が指定できるようになります。 それよりも大きな利点は、pcre 検索は regexp 検索よりも早いことが多いという 点です。これは多くのシステムに入っている POSIX 正規表現の実装よりも pcre 実装の方が効率がよいことが多いためです。

pcre テーブルの使い方については、例を含めて pcre_table(5) マニュアルページに記述 されています。PCRE 自身の情報は http://www.pcre.org/ で見つかるでしょう。

PCRE サポート付きで Postfix をビルドする

注意: Debian GNU/Linux の Postfix で pcre を使うには、postfix-pcre パッケージをインストールするだけで終わりです。Postfix を再コンパイルする 必要はありません。

今後いつか、Postfix はマップタイプを追加するためのプラグインインター フェースを持つようになる予定です。それまでは、Postfix に PCRE サポートを 組み込む必要があります。

まずはじめに、以下から得られる PCRE (Perl Compatible Regular Expressions; Perl 互換正規表現) ライブラリが必要です:

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/.

「注意」: pcre バージョン 2.06 以前を使うことはできません。

PCRE サポート付きで Postfix をビルドするには、-DHAS_PCRE と PCRE インクルードファイルに対する -I を CCARGS に加え、PCRE ライブラリのパスを AUXLIBS に加える必要があります。例えば:

make -f Makefile.init makefiles \
    "CCARGS=-DHAS_PCRE -I/usr/local/include" \
    "AUXLIBS=-L/usr/local/lib -lpcre"

Solarisにはランタイムパス情報も必要です:

make -f Makefile.init makefiles \
    "CCARGS=-DHAS_PCRE -I/usr/local/include" \
    "AUXLIBS=-L/usr/local/lib -R/usr/local/lib -lpcre"

知っておくべきこと