Автор: Михайло Даниленко
« : 2006-12-27 23:23:21 »Саме так, бо в листі можуть бути вказані два користувача, наприклад для мене ig@ign.com.ua та не для мене gi@ign.com.ua.А, тоді в першому рядку все правильно - я просто мислив категоріями однокористувацького налаштування

Цитата
Тобто крапку в адресі треба замінити на \. А що означає (.*[ <])? Дужки я здогадався до чого.Так, будь-яку крапку вам треба "відмінити" за допомогою '\', бо інакше крапка буде сприйнята як еквівалент до "будь-який один символ". Це синтаксис регулярних виразів.
Знак питання показує, що попередній символ (в даному випадку завдяки дужкам - увесь вираз в дужках) опціональний, тобто він може бути присутнім, або не бути присутнім.
.* - зірочка - це "нуль, або більше разів попередній символ" (в даному разі - крапка, яка означає "будь-який символ").
[ <] - один з цих символів, це щоб вказати, що між "будь-які символи будь-яку кількість разів" та ig@... повинен бути розділювач - прбіл, або '<'.
В цілому вираз має спрацьовувати на:
To:ig@...
Cc: asdzx safzx zxv ig@...
Bcc: afds sdf sdf dsfs<ig@...
To:sdfs <ig@...
Cc:<ig@...
А взагалі, мабуть, краще використовувати наперед задані макроси TO чи TO_ - вони більш загальні (man procmailrc, в кінці):
*^TO_ig@ign.com.ua[^-a-zA-Z0-9._]*$