Per un progetto, sto sviluppando delle regexp sotto Perl.

Ho un dubbio riguardo l'uso del ? e ?? dentro la RE.

Secondo voi, che differenza di output c'e` tra queste tre espressioni?
codice:
$s =~ s/([^\w\.])$k([^\w])/$1$m$2/gs;
$s =~ s/(.?[^\w\.])$k([^\w].?)/$1$m$2/gs;
$s =~ s/(.??[^\w\.])$k([^\w].??)/$1$m$2/gs;
(l'unica differenza e` il carattere . seguito da uno o due ?)
$m e $k sono delle variabili definite: devo sostituire $m al posto di $k in tutta la stringa, solo se $k non e` compreso tra caratteri alfanumerici e non e` preceduto da .

Credevo che fossero equivalenti, invece la prima e la terza mi danno lo stesso risultato, mentre la seconda no (mi salta alcune sostituzioni nella stringa).

Grazie in anticipo.
Mich_