2013-03-02 17 views
24

Ho una stringa in R che contiene una grande quantità di parole. Quando si visualizza la stringa ricevo una grande quantità di testo che include il testo simile al seguente:Rimozione di determinati caratteri da una stringa in R

>docs 

.... 

\u009cYes yes for ever for ever the boys cried in their ringing voices with softened faces 

.... 

Quindi mi chiedo come rimuovere queste \ U009 personaggi (tutti loro, alcuni dei quali hanno numeri leggermente diversi) dalla stringa. Ho provato a utilizzare gsub(), ma non è stato efficace nel rimuovere il contenuto dalle stringhe.

risposta

40

Questo dovrebbe funzionare

gsub('\u009c','','\u009cYes yes for ever for ever the boys ') 
"Yes yes for ever for ever the boys " 

Ecco 009C è il numero esadecimale di unicode. Devi sempre specificare 4 cifre esadecimali. Se si dispone di molti, una soluzione è quella di separarli da un tubo:

gsub('\u009c|\u00F0','','\u009cYes yes \u00F0for ever for ever the boys and the girls') 

"Yes yes for ever for ever the boys and the girls" 
+0

Grazie, questo ottenuto lavorando. –

+1

in merito a "è necessario specificare sempre 4 cifre": Questo è solo quando si esegue unicode. Questo dovrebbe rimuovere spazi e trattini proprio bene: 'gsub ('| -', '', '1-444-654')' – Zak

4

prova: gsub('\\$', '', '$5.00$')

Problemi correlati