Ho una stringa da cui voglio rimuovere la punteggiatura.Come posso sostituire [] parentesi con SED
Ho iniziato con
sed 's/[[:punct:]]/ /g'
ma ho avuto problemi su HP-UX non gradire che tutto il tempo, e alcune volte vorrei avere un nulla 0 e dopo un $
nella mia stringa sarebbe dissappear. Così ho deciso di provare a farlo manualmente.
Ho il seguente codice che funziona su tutti i miei segni di punteggiatura a cui sono interessato, tranne che non riesco ad aggiungere parentesi quadre "[]" al mio sed con nient'altro, altrimenti non sostituisce nulla, e io non ottenere un errore, quindi non sono sicuro di cosa risolvere.
In ogni caso questo è ciò che attualmente ho e vorrei aggiungere []
a.
sed 's/[-=+|[email protected]#\$%^&*(){}:;'\'''\"''\`''\.''\/''\\']/ /g'
BTW sto usando KSH su Solaris, RedHat & HP
Il punto e virgola in ": punct;" un errore di battitura? –
Perché stai usando sed per questo? Per sostituire un grande gruppo di caratteri con uno spazio, è meglio usare 'tr'. –
@Will - sì che è un errore di battitura .... non riesco a modificare il mio OP. Come utilizzerei tr per sostituire la mia punteggiatura con gli spazi? Ho provato a usare [: punct:] con TR e SED senza alcun risultato. – nitrobass24