2017-09-30 1 views
0

J'ai une chaîne avec des caractères numériques entre eux.R: gsub garder l'espace entre les caractères dans une chaîne sans supprimer

TestString = "white tiger roars.12.03.001-fast horse runs13.15.01.001-cat is useless 11.01.09.001-dog barks22.07.01.001" 

Je wan't à ressembler

"white tiger roars-fast horse runs-cat is useless-dog barks" 

Avec mon approche jusqu'à maintenant, je ne suis pas en mesure de conserver l'espace entre les mots.

gsub("[^a-z-]", "", TestString) 
#"whitetigerroars-fasthorseruns-catisuseless-dogbarks" 
+2

ajouter juste un espace? '" [^ a-z -] "' – rawr

+1

ou 'gsub (" \\ d * [.] * "," ", TestString)' – useR

+0

C'est tellement simple. Merci –

Répondre

1
gsub("\\s?(\\d+|\\.)","","white tiger roars.12.03.001-fast horse runs13.15.01.001-cat is useless 11.01.09.001-dog barks22.07.01.001") 
[1] "white tiger roars-fast horse runs-cat is useless-dog barks"