Newsgroup: it.comp.software.newsreader
Titolo: [Gravity] regole per filtrare post

Frequentando il ng it.comp.os.win.win9x e avendo windows 98 vorrei usare 
una regola per eliminare i messaggi che contengono nel subject la 
dicitura ME, che quindi si riferiscono alla Millenium Edition e che non 
mi interessano. Ho provato a creare una regola che nel suddetto ng 
eliminasse (action: discard) gli articoles (conditions) il cui "subject 
does contain phrase: ME2, ma ho notato che cancellava tutti i post che 
nel subject hanno delle parole che contengono la sillaba la sillaba "me" 
anche minuscola (me ne sono accorto perchè avevo mandato un post che 
conteneva nel subject la parola "come" e questo non appariva!). Come 
dovrei fare per ottenere l' effetto desiderato? Dovrei spuntare l' 
opzione "regular expression? E in ogni caso che cosa si intende per 
"regular expression"?
Spero di essermi spiegato abbastanza e ringrazio chiunque voglia aiutarmi

dicitura ME, che quindi si riferiscono alla Millenium Edition
Per filtrare ME maiuscolo, inserisci (dove lo sai già) questa *regular* 
*expression* (spuntando quindi la relativa casellina):
[M][E]
Naturalmente così filtri anche 'coMEdONe', 'ERMENEGILDA', 'a ME la 
birra PIACE' etc. Osservando come WinME sia usualmente indicato su quel 
gruppo, che non seguo più da parecchio tempo, potresti probabilmente 
far meglio.

E in ogni caso che cosa si intende per "regular expression"?
Sarebbe un po' lungo da spiegare, ma senza tirare fuori linguaggi regolari e
altre nozioni di informatica teorica potremmo dire che sono un modo di
descrivere un modello (pattern) con delle stringhe di testo.
L'ho fatta difficile? :-)
Vabbè, diciamo che con una stringa tipo 
{^[^a-z0-9]*[a-z][^a-z0-9]+[a-z][^a-z0-9]+[a-z][^a-z0-9]+[a-z][^a-z0-9]+}
descrivi tutte le stringhe che iniziano con 4 lettere (non necessariamente
precedute da un carattere non alfanumerico)ciascuna seguita da uno o più
caratteri non alfanumerici, tipo ---B-I-G---S-A-L-E---.
Sembra difficile, e per scriverne una ci devi ragionare un po', ma una volta
che ci prendi la mano puoi farci delle cose impensabili.
Aggiungo qui gli indirizzi che ti dicevo sopra.
Le FAQ di ICSN: 
http://members.xoom.it/sleepers/FAQ-icsn.htm
Faq e manuali, Servizi Internet: 
http://www.vene.ws
 
Ciao.
-- 
Antonio  @=D 

 Ciao.
Grazie ancora, alla prossima ^__^

 
Mmm... ti ringrazio del suggerimento, ma c' è qualcosa che non mi torna: 
se nella rule ci metto " [M] [E] " e spunto "regular expression" e poi 
Gravity mi elimina tutti i messaggi che hanno nel subject la sillaba ME 
(maiuscola) anche se è contenuta in una parola (tipo "COME" o anche 
"coME" per tornare all' esempio di partenza) non capisco che differenza 
c' è se nella rule ci metto " ME " senza le parentesi quadre...
Il mio problema non era solo quello di eliminare i post che avessero nel 
subject la dicitura ME, ma anche quello di  NON eliminare quelli che 
contengono nel subject parole composte dalla sillaba ME!
Forse mi sfugge qualcosa ma non ho capito la differenza...

non ho capito la differenza...
La differenza sta solo nel fatto che, con la regexp che ti ho indicato, 
non filtri le sillabe 'me' minuscole, ma solo quelle maiuscole. Siccome 
non si dovrebbero usare subject tutti maiuscoli, probabilmente ME 
(maiuscolo) sarà spesso una sigla... che probabilmente si riferirà a 
win ME. Ma il rischio di falsi positivi c'è, del che io stesso ti 
avvisavo.
Quindi tenta con la regexp:
win(dows)*( )*(me[^a-zA-Z]|(me)<~2-~0>)
Ho provato a dare un'occhiata al gruppo. In prima approssimazione, 
sembra funzionare egregiamente: riscontra una occorrenza di /win, 
seguito o meno da /dows, il tutto seguito da un numero qualsiasi, anche 
nullo, di spazi bianchi, il tutto seguito da /me: /me deve essere la 
fine del subject, oppure deve essere seguito da un carattere che non 
sia una lettera. La regola va bene sia con /win, /dows e /me maiuscoli, 
sia minuscoli.

win(dows)*( )*(me[^a-zA-Z]|(me)<~2-~0>)
Sorry, intendevo:
win(dows)*( )*(me[^a-zA-Z]|(me)<~1-~0>)

andarmi a cercare qualcosa sull' argomento...
Se hai accesso ad una macchina con UNIX o Linux,  man regex e man pcre
dovrebbero toglierti tanti dubbi.
Per un'introduzione veloce  ti conssiglio il documento che ti ho scritto su.
Mi sarebbe piaciuto condensare quel che so, a partire dalla teoria degli
automi (che chiarisce molto il concetto di pattern matching) ma il tempo è
tiranno.
Ciao.
[1]Per i puristi dell'italiano; non mi veniva una traduzione decente di
pattern matching. Chi sa consigliarmene una?
-- 
Antonio  @=D 

 
Mmmm... comincio lentamente a capire, mi sembra molto interessante anche 
perchè mi sembra che in questo modo le potenzialità dei filtri e dello 
scoring si amplino molto, dovrò studiare un pò mi sa per impadronirmene 
ma mi affascina, nel frattempo ti ringrazio della disponibiltà che mi hai 
dimostrato.

Pare proprio che  il giorno Sun, 13 Jan 2002 23:57:06 GMT
Ghost abbia scritto:

occhei, adesso provo, grazie ^__^

 differenze nell'interpretazione.
Ehm, hai ragione, effettivamente nell' Help di Gravity un pò di info si 
trovano, anche se in inglese, il che complica un pò le cose, comunque la 
regola che tu e Ghost avete creato (anche se a prima vista mi sembra che 
ci siano delle leggere differenze...) credo che mi sarà utile per capire 
il meccanismo di fondo...
Grazie ancora e alla prossima!

win(dows|)?[^a-z]?me[^a-z]
Non funziona, perché Gravity non usa il punto interrogativo per indicare
zero o una occorrenza di un atomo.
Inoltre mi sembra che abbia problemi anche con la stringa vuota. 
Con Agent andava che era una meraviglia.
Prova con 
win(dows){0,1} {0,1}me( .*|<~0>)
Questa sembra buona.   
GNAM! :-)
Non c'è bisogno di dire che devi spiegarmi cosa fa la regexp che ti ho
scritto.  :-)
Ciao, e buon divertimento.
-- 
Antonio  @=D 

Grazie ancora e alla prossima!
Ciao.
-- 
Antonio  @=D 

 Guarda che aspetto che me la traduci in italiano! :-)
Mi prendo un pň di tempo perchč per me in questi giorni č piů tiranno 
del mullah Omar, ma a questo punto č una questione di principio ;-) (in 
pratica: per adesso ancora non ho capito fino in fondo come funge, ma io 
sono testardo! ^__^)

gravity c'è una pagina "Regular Expression references"
e sulla tom`s page c`e` anche qualche spiegazione
http://lightning.prohosting.com/~tbates/gravity/index.html
-- 
Ciao!
        Gian Matteo

 Facciamo l'ipotesi che ............
Ti ringrazio moltissimo per le preziose informazioni