1 (edytowany przez @rtur 2006-12-17 23:55:06)

Temat: Uniwersalny filtr sortujący dla programu MyGate - pytanie

Witam, zrobilem sobie bramke usenetowa z mygate. Do sortowania postow w katalogi wykorzystalem "Uniwersalny filtr sortujący dla programu MyGate", wszystko dziala pieknie, TB! tworzy sam katalogi z nazwami grup i wszystko OKI. Co zrobic zeby TB! mi tworzyl np. z nazwy grupy alt.pl.muzyka.dolujaca katalog a.p.m.dolujaca w drzewie katalogow?. Niektore nazwy grup sa bardzo dlugie i nie widze nazwy calej katalogu, takze zrobilbym tak ze tylko ostatni wyraz po ostatniej kropce bylby caly, a reszte mialo by tylko pierwsza litere.

2

Odp: Uniwersalny filtr sortujący dla programu MyGate - pytanie

@rtur napisał/a:

Niektore nazwy grup sa bardzo dlugie i nie widze nazwy calej katalogu, takze zrobilbym tak ze tylko ostatni wyraz po ostatniej kropce bylby caly, a reszte mialo by tylko pierwsza litere.

Oczywiście, zgodnie z zasadą "The Bat! może (prawie) wszystko", da się to zrobić. Modyfikacji wymaga sposób tworzenia nazwy folderu wpisywanej w filtrze. Nie wystarczy już jedno proste wyrażenie regularne wycinające nazwę grupy, lecz trzeba będzie skorzystać z pomocy szablonów podręcznych do utworzenia nazwy w żądanej przez Ciebie postaci. W miejsce nazwy folderu docelowego w filtrze wpisz zatem następujące wyrażenie:

\\<Konto>\%QInclude(MG)

Tutaj MG jest nazwą szablonu podręcznego, który inicjuje proces tworzenia nazwy folderu i ma następującą zawartość:

%_Grupa='%SetPattRegexp="(?isU)^X\-MyGate\-MID\:\s(.*)\:"%RegexpMatch(%Headers)'%-
%SetPattRegExp="(?is)^(.*)\.(.*)"%RegexpBlindMatch(%_Grupa)%-
%_Grupa_0="%SubPatt(1)"%-
%_Grupa_1="%SubPatt(2)"%-
%QInclude(MG_1)%_Grupa_1%-

Szablon ten wywołuje następny szablon podręczny o nazwie MG_1, w którym następuje rekurencyjne tworzenie nazwy folderu. Szablon ten ma następującą zawartość:

%If:%-
'%SetPattRegExp="(?is).*(\.).*"%RegexpMatch(%_Grupa_0)'='.'%-
:'%-
%SetPattRegExp="(?is)^(.?).*?\.(.*)"%RegexpBlindMatch(%_Grupa_0)%-
%SubPatt(1).%-
%_Grupa_0="%SubPatt(2)"%-
%QInclude(MG_1)'%-
:'%-
%SetPattRegExp="(?is)^(.).*"%RegexpMatch(%_Grupa_0).'%-

Po takich zmianach filtr będzie tworzył (w razie potrzeby) foldery dla grup dyskusyjnych o skróconych nazwach i przenosił do nich newsy odebrane za pomocą wtyczki MyGate.

3

Odp: Uniwersalny filtr sortujący dla programu MyGate - pytanie

Extra! Dziękuje działa jak chciałem