Devo sostituire tutte le occorrenze di “asterisco punto” come mostrato qui:
blah blah .*:.*:.* blah blah 
con:
[0-9][0-9]:[0-9][0-9]:[0-9][0-9] 
in modo che il risultato finale sia simile a questo:
blah blah [0-9][0-9]:[0-9][0-9]:[0-9][0-9] blah blah 
Ho provato diverse varianti di quanto segue ma “non ha funzionato:
%s_ .*:.*:.* _ [0-9][0-9]:[0-9][0-9]:[0-9][0-9] _g 
Risposta
Hai fornito un esempio di una riga con “punto asterisco” ripetuta tre volte, separate da due punti. Se i tuoi dati saranno sempre così, potresti anche restare con Risposta di AlexP . Ma la tua domanda dice che devi sostituire tutte le occorrenze di “asterisco punto”. Se quella dichiarazione di il problema è preciso, dovresti usare
:%s/\.\*/[0-9][0-9]/g 
che troverà e sostituirà “asterisco punto” anche quando non appare in gruppi di tre.
Risposta
Per Vim:
 Per sed: sed -e "s/\.\*:\.\*:\.\*/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/g". 
-  
%significa applicare la sostituzione su tutte le righe; non è necessario inseddove per impostazione predefinita il comando viene applicato a tutte le righe. -  
\.è un punto; un.nudo indica qualsiasi carattere. -  
\*è un asterisco; un*significa 0 o più dellatomo precedente. 
Risposta
 Utilizzo del modificatore nomagic per il pattern in Vim: 
:%s/\M.*/[0-9][0-9]/g 
 Il \M rimuoverà la particolarità di entrambi . e * nel pattern. 
 Vedi :help magic in Vim.