Oczywiście, podany przeze mnie szablon dotyczy konkretnej postaci wiadomości, w której występuje tekst w takiej postaci, jak opisał kazina23 i w ogólnym przypadku nie zadziała. Można jednak dostosować go do innych celów.
1. Jeżeli odbiorca wiadomości jest wpisany do książki adresowej (i jest tam jego imię i nazwisko), wówczas szablon ma następującą postać:
%_Imie="%ABToFName"%-
%_Imiona=%Put("C:\Imiona_odmiana.txt")%-
%SetPattRegexp="(?isU)^(%_Imie)\s(.*)\s(.)"%-
%RegexpBlindMatch(%_Imiona)%-
%_Wolacz="%SubPatt(2)"%-
%_Plec="%SubPatt(3)"%-
Dzień dobry,
%If:%_Plec=='M':"Panie %_Wolacz, ":%-
$%If:%_Plec=='F':"Pani %_Wolacz, ":""$
Jak widać, pierwsze trzy wiersze podanego wcześniej szablonu zostały zastąpione jednym, który pobiera imię z książki. Dalej wszystko dzieje się tak samo jak opisałem wyżej.
2. Druga możliwość - gdy adresata nie ma w książce,ale w wiadomości podał w jej nagłówku dane w postaci Imię Nazwisko <login@dome.na>. Wtedy pierwszy wiersz powyższego szablonu, czyli wyrażenie:
%_Imie="%ABToFName"%-
należy zastąpić trzema następującymi:
%SetPattRegexp="(?isU)^(.*)(\s.*)"%-
%RegexpBlindMatch(%OFromName)%-
%_Imie="%SubPatt(1)"%-
Oczywiście, możliwości jest więcej - ogólnej recepty raczej nie można podać, bo nadawcy podają swoje dane w różny sposób.