Newsgroup: it.comp.software.newsreader
Titolo: Le espressioni regolare, queste sconosciute

Cacchiarola, ho cercato di dedicare i miei (rari) ritagli di tempo per 
decifrare quello che inizialmente mi sembrava il terzo segrato di Fatima, 
ovvero...le espressioni regolari che mi erano state suggerite qualche 
giorno fa da Ghost e da Lo Smilzo e alla fine ce l' ho fatta! (Ehm, 
diciamo che FORSE ce l' ho fatta ;-P)
Allora:
La regexp di Lo Smilzo, vale a dire
win(dows){0,1} {0,1}me( .*|<~0>)
dovrebbe (il condizionale č d' obbligo) voler dire:
Trovami quel pattern di caratteri che contiene la parola "win" seguita o 
meno (zero o una occorrenza indicata da (dows{0,1}) daqlla parola "dows" 
seguita o meno da uno spazio (spazio{0,1}, ho capito bene?) seguita dalla 
parola "me", seguita infine eventualmente da una qualsiasi stringa 
arbitraria di caratteri (cioč .*) oppure ( | ) finisce lě ( <~0> )
Piů o meno dovrebbe essere equivalente la regexp proposta da Ghost cioč:
win(dows)*( )*(me[^a-zA-Z]|(me)<~1-~0>)
E se non erro (il chč perň č piů che possibile) dovrebbe voler dire:
Trovami quel pattern di caratteri che contiene la parola "win" seguita o 
meno (zero o una occorrenza in base a (dows)* ) seguita o meno da uno 
spazio ( ( )*, giusto?) e poi dalla parola "me" seguita da una stringa 
arbitraria di caratteri ( [^a-zA-Z] ) oppure... ( | ) ..oppure non ho 
capito esattamente cosa si intende con l' intervallo <~1-~0>, le 
indicazioni nell' Help do Gravity sono in inglese e non mi sono molto 
chiare, in pratica: chevvordě? ^__^
Mmmm... mi sa che dovrň studiare ancora un bel pň, intanto spero 
perlomeno di esserci andato vicino, siate clementi...
Come ha detto? Mi devo ripresentare al prossimo appello? Ma come 
professore, mi faccia un' altra domanda, giuro che ho studiato!!!
Neanche un diciotto per pietŕ?
          .
          .
          .
          .
          .
          .
Va bene anche un diciassette e due figure... ;-)

Va bene anche un diciassette e due figure... ;-)
Naa. L'hai fatta bella, la figura.
Approvato con 27.  :-)
Ciao.
-- 
Antonio  @=D 

NOn l'ho capito neanch'io.  :-(
Non l'hai capito semplicemente perché io ho fatto confusione. Infatti, 
per quello che avevo in mente, avrei dovuto scrivere:
win(dows)*( )*(me[^a-zA-Z]|(me)<~0>), oppure
win(dows)*( )*me([^a-zA-Z]|<~0>), oppure ancora
win(dows)*( )*(me[^a-zA-Z]|<~2>me)
Scrivendo invece win(dows)*( )*(me[^a-zA-Z]|(me)<~1-~0>), si ottiene 
che /me può:
-essere seguito da un carattere non lettera (né maiuscola, né 
minuscola);
-essere la fine del sbj;
(e fin qui tutto coincide)
-essere seguito da una lettera, seguita da un numero qualsiasi di spazi 
bianchi, seguito dalla fine del sbj
(caso che non ci interessa).
Occhio che, in Gravity, la regexp me<~0> riscontra tutte le stringhe 
che terminino con /me, seguito da un numero *qualsiasi*, anche nullo, 
di spazi bianchi, seguito dal fine stringa... in pratica, in Gravity, 
me<~0> equivale a me( )*<~0>. Per semplificare, possiamo pensare che, 
se un subject finisce con un certo numero di spazi bianchi, Gravity li 
taglia, e considera che il  subject finisca con l'ultimo carattere non 
blank.
Allo stesso modo, <~2>me riscontra tutte le stringhe che terminino con 
/me seguito da un numero qualsiasi, anche nullo, di spazi bianchi. 
Altro esempio: la regexp (me )<~1> *non* riscontra "me  ". Dirò di più: 
la regexp (me )<~0> non dà mai riscontri positivi. E' questo che mi 
aveva inizialmente fuorviato, facendomi poi fare confusione. 
Chiedo venia.

Approvato con 27.  :-)
Meno male, avevo paura di dover chiedere aiuto al CEPU... ;-)

seguita da una stringa arbitraria di caratteri non alfabetici...
Perché cosě becchi cose tipo "win me č bello" e non cose tipo 
"win meraviglioso".
Avresti perň il falso positivo  "WinMe***" dove si parla male del S.O.
Ciao.
-- 
Antonio  @=D