Recentemente ho visto un comando sostitutivo in cui l'autore ha avuto il /
sostituito da un !
simile in questo modo::s!abc!ABC!g
Ho provato a trovare della documentazione su questo utilizzo ma non sono riuscito a trovare nulla di rilevante. Quindi ho provato a sperimentare da solo e ancora una volta non sono riuscito a capire la vera differenza tra i due segni. Ecco cosa ho trovato:
- Non è possibile mescolare
!
e/
in un comando. Ad esempio:s!abc/ABC
fallisce. - Può essere utile usare
!
per evitare di sfuggire a/
in un modello. Ad esempio, se voglio sostituire</
con%
posso usare al:%s!</!%!g
posto di:%s/<\//%/g
. - Sembra che in alcuni casi alcuni regex non funzionino
/
e funzionino correttamente,!
ma dato che non sono davvero un esperto di regex non ne sono sicuro.
Quindi la mia domanda è semplice: qual è il vantaggio di usare !
un comando sostitutivo e quando dovrei decidere di usarlo invece di /
?