The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

pcre_table (5)
  • >> pcre_table (5) ( Русские man: Форматы файлов )
  • pcre_table (5) ( Linux man: Форматы файлов )
  •  

    НАЗВАНИЕ

    pcre_table - формат таблиц PCRE Postfix  

    ОБЗОР

    pcre:/etc/postfix/filename
    
     

    ОПИСАНИЕ

    Почтовая система Postfix использует дополнительные таблицы для перезаписи адреса или маршрутизации почты. Обычно эти таблицы имеют формат dbm или db. Однако, поисковые таблицы можно задавать в формате PCRE (Perl Compatible Regular Expression - Регулярное выражение совместимое с Perl).

    Узнать о типах поисковых таблиц, поддерживаемых вашей системой Postfix, можно с помощью команды postconf -m.

    Общий вид таблицы PCRE:

    пропуски и комментарии
    Пустые строки и строки, начинающиеся с `#', игнорируются.
    начальные пробелы
    Строки, начинающиеся с пробела, являются продолжением предыдущей строки.
    шаблон результат
    При совпадении шаблона со строкой поиска используется соответствующий результат. Строка, начинающаяся с пробела, является продолжением предыдущей строки.

    Каждый шаблон является регулярным выражением в стиле perl. Разделителем выражения может быть любой символ, кроме пробелов и символов, имеющих специальное значение (по традиции используется прямой слэш '/'). Регулярное выражение может содержать пробелы.

    По умолчанию, при сравнении регистр не учитывается, хотя следующим вторым слэшем с флагом `i' это можно изменить. Поддерживаются и другие флаги, но из них полезным является `U', который делает сравнение не прожорливым (ungreedy) (подробнее смотрите в документации PCRE и исходных файлах).

    Каждый шаблон применяется ко всей ключевой строке поиска. В зависимости от приложения, этой строкой может быть полное имя машины клиента, полный IP адрес клиента или полный почтовый адрес. Таким образом, поиск родительских доменов или родительских сетей не выполняется, почтовые адреса user@domain не разбиваются на свои составляющие части user и domain, а user+foo не разбиваются на user и foo.

    Шаблоны применяются в порядке следования в таблице, пока не будет найден шаблон, удовлетворяющий строке поиска.

    Замена подстрок из совпавшего выражения в строку результата возможна с помощью традиционного для perl синтаксиса ($1, $2, и т.д.). Возможно, макрос в строке результата потребуется записать как ${n} или $(n), если перед ним нет пробела.  

    ПРИМЕРЫ

    # Protect your outgoing majordomo exploders
    /^(?!owner-)(.*)-outgoing@(my.domain)$/    550 Use ${1}@${2} instead
    
    # Возвращать письма для friend@whatever, кроме случаев, когда whatever 
    # является вашим доменом (вам было бы проще возвращать все письма для
    # friend@ - но это просто пример).
    /^friend@(?!my.domain).*$/         550 Stick this in your pipe $0
    
    # Многострочная запись. Текст посылается как одна строка.
    #
    /^noddy@connect.com.au$/
     550 This user is a funny one. You really don't want to send mail to
     them as it only makes their head spin.
    
     

    СМОТРИ ТАКЖЕ

    regexp_table(5) - формат таблиц регулярных выражений POSIX
    
     

    ОБ АВТОРАХ

    Код поиска в таблице PCRE изначально был написан:
    Andrew McNamara
    andrewm@connect.com.au
    connect.com.au Pty. Ltd.
    Level 3, 213 Miller St
    North Sydney, NSW, Australia
    
    Адаптация:
    Wietse Venema
    IBM T.J. Watson Research
    P.O. Box 704
    Yorktown Heights, NY 10598, USA
    
    Перевод:
    Alex Savvin <savvin@mail.ru>, Jan 05, 2002
    
    

     

    Index

    НАЗВАНИЕ
    ОБЗОР
    ОПИСАНИЕ
    ПРИМЕРЫ
    СМОТРИ ТАКЖЕ
    ОБ АВТОРАХ


    Поиск по тексту MAN-ов: 




    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2022 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру