Gdy tworzysz filtry Usenet oraz Email lub przeprowadzasz globalne wyszukiwanie możesz wykorzystać język wyrażeń Agenta, aby utworzyć wyrażenia logiczne. Agent wykorzysta je, by odnaleźć wiadomości zgodne z założonymi warunkami. Za każdym razem gdy Agent znajdzie wiadomość spełniającą kryteria warunku, wykona akcję, którą zaplanowałeś (np. skasuje wiadomość lub pobierze treść wiadomości i umieści ją w odpowiednim folderze).
Wyrażenia składają się z następujących elementów:
Język wyrażeń Agenta jest elastyczny. Możesz tworzyć zarówno wyrażenia bazujące na pojedyńczych słowach, możesz również wykorzystać "wyrażenia regularne" (bardziej złożone formy wyrażeń stworzone przez użytkowników UNIXa). Chociaż wyrażenia regularne są trudniejsze do opanowania niż proste wyrażenia bazujące na słowach, są znacznie potężniejsze. Możesz zapoznać się z rozdziałem Podręcznik wyrażeń regularnych i je wypróbować. Przeglądając Przykłady wyrażeń możesz poznać kilka różnych zastosowań.
Najprostszym wyrażeniem jest pojedyńcze słowo. Możesz łączyć pojedyńcze słowa tworząc frazy. Ostatecznie możesz wykorzystać operatory, takie jak and (i) oraz or (lub), aby łączyć frazy w bardziej złożone wyrażenia logiczne. (Patrz w kolejnej sekcji "Operatory w wyrażeniach".) Przypasowując frazę Agent igoruje wszystkie spacje i znaki interpunkcyjne zarówno w wyrażeniu filtrującym, jak i testowanej wiadomości. Znaki interpunkcyjne i przerwy są normalizowane do jednej spacji. Na przykład znaki interpunkcyjne w następującym wyrażeniu
subject: (money; or rich.) and not author: amos grinch
Gdy wszystkie słowa są zapisane małymi literami, pasujące fragmenty nie uwzględniją wielkości liter. Możesz jednak wymusić dokładne, uwzględniające wielkość liter pasowanie poprzez użycie jednej lub większej ilości dużych liter w słowie. Na przykład:
subject: shell
będzie pasowało do shell, Shell, sHell lub ShELl w temacie wiadomości ("subject:").
Aby wymusić dokładne, uwzględniające wielkość liter pasowanie, użyj jednej lub większej ilości dużych liter w słowie, tak jak w:
subject: Shell
Będzie to pasowało tylko do Shell.
Oto inny przykład. Słowo windows pasuje do windows, Windows lub WINDOWS.
Ale WinDows pasuje tylko do WinDows.
Trzy operatory służące do łączenia określeń w wyrażenia to and (i), or (lub) oraz not (nie) mają następujące znaczenie:
and (i) | Agent musi znaleźć wszystkie frazy oddzielone przez and (i), aby wyrażenie pasowało, na przykład subject: (green apples and oranges) pasuje do do tematu ("subject:"), który zawiera oba składniki: frazę "green apples" oraz słowo "oranges". |
or (lub) | Agent potrzebuje znaleźć przynajmniej jedno ze słów oddzielonych przez or (lub), aby wyrażenie pasowało, na przykład subject: (apples or juicy oranges) pasuje do tematu ("subject:"), który zawiera przynajmniej jeden ze składników: słowo "apples" lub frazę "juicy oranges". |
not (nie) | Agent nie może znaleźć ani jednego pasującego słowa lub frazy. Na przykład subject: (apple and not pies) pasuje do wszystkich tematów ("subject:"), które zawierają słowo "apple", ale nie zawierają słowa "pies" . |
Umieszczając operatory w cudzysłowach spowodujesz, że Agent będzie traktował je jak zwykły tekst (np. "and", "or", "not"). Może to być pomocne w przypadku, gdy słowo and jest integralną częścią tematu w dodawanym filtrze "zabijającym".
Na przykład, w celu rozpoznania frazy this and that (to i owo ~;-) ), możesz wykorzystać dowolne z następujących wyrażeń:
this "and" that "this and that"
Uwaga: Gdy używasz dowolnego z przycisków "Paste Field" (Wklej pole), cudzysłowy są automatycznie umieszczane dookoła każdego operatora występującego w danym polu.
Dla każdego operatora instnieje jego równoważnik w postaci pojedyńczego symbolu. Listę wszystkich znaków, jakie mogą być wykorzystane do stworzenia wyrażenia znajdziesz w rozdziale Znaki wykorzystane w wyrażeniach.
Jeżeli w wyrażeniu wykorzystasz więcej niż jeden operator, Agent będzie przetwarzał je w następującej kolejności, od najważniejszego do najmniej istotnego:
not (nie) and (i) or (lub)
Możesz zmienić kolejność przetwarzania wykorzystując nawiasy (...). Na przykład
subject: pink or rose and not author: tsmith
pasuje do wszystkich wiadomości zawierających w temacie ("subject:") słowo pink lub do wszystkich wiadomości zawierających słowo rose, których autorem ("author:") nie jest tsmith.
Ale...
subject: (pink or rose) and not author: tsmith
pasuje do wszystkich wiadomości zawierających w temacie ("subject:") słowa pink lub rose, a których autorem ("author:") nie jest tsmith.
Oto opis kilku innych niż "and" (i), "or" (lub) oraz "not" (nie) operatorów:
* | "Dzika karta" (asterisk) w wyrażeniach bazujących na słowach oznacza cokolwiek za łańcuchem (który musi składać się z conajmniej trzech znaków). "Dzika karta" w wyrażeniach regularnych oznacza, że Agent musi znaleźć zero lub więcej powtórzeń poprzedzającego określenia, aby spełnić warunek. Na przykład, a* oznacza zero lub większą ilość liter a. |
[L,H] | Aby określić zakres, umieść dolną i górną granicę zakresu (oddzieloną przecinkiem) w nawiasach kwadratowych. |
% | Znak procentów oznacza, że następujące po nim określenie powinno być wrażliwe na wielkość liter.
W przeciwnym wypadku:
|
= | Znak równości, który poprzeda dowolne określenie w wyrażeniu oznacza, że Agent musi dopasować się dokładnie do tego określenia. |
Ogólnie Agent szuka słów i fraz występujących w wyrażeniu we wszystkich możliwych miejscach. Ilość przeszukiwanych wiadomości zależy od typu poszukiwań (Usenet, Email lub poszukiwania ogólne). Dodatkowo korzystając z tzw. kwalifikatorów wyrażeń możesz ograniczyć zakres poszukiwań tylko do określonych pól.
Jeżeli wyrażenie wyszukujące nie zawiera kwalifikatorów przeszukiwane są następujące pozycje:
Filtry Usenet: | Tylko temat (Subject) i autor (Author) (nie jest przeszukiwana treść wiadomości) |
Filtry Email: | Wszystkie pola nagłówka (nie jest przeszukiwana treść wiadomości) |
Poszukiwanie ogólne: | Wszystkie pola nagłówka i treść wiadomości |
Aby ograniczyć poszukiania tylko do określonych pól użyj kwalifikator pola, który jest nazwą pola do przeszukania zakończoną dwukropkiem. Na przykład:
subject: testing
poszukuje tylko w polu temat: ("subject:") słowa "testing"
subject: testing and from: tom gold
poszukuje tylko w polu temat: ("subject:") słowa "testing" i tylko w polu od: ("from:") frazy "tom gold". Stąd, pasuje ono tylko do tych wiadomości, których temat zawiera słowo "testing", a pole od: ("from:") zawiera frazę "tom gold".
Wyrażenia wykorzystane w filtrach Usenet, Email i poszukiwaniu ogólnym wykorzystują różne kwalifikatory, których dokładny opis zaprezentowano poniżej.
x-mailer: forte agent
Dodatkowo filtry Email mogą użyć następujących specjalnych kwalifikatorów:
Patrz również: