Remove square brackets from a string vector
Solution 1:
You could gsub out the brackets like so:
n = c("[Dave]", "[Tony]", "[Sara]")
gsub("\\[|\\]", "", n)
[1] "Dave" "Tony" "Sara"
Solution 2:
A regular expression substitution will do it. Look at the gsub() function.
This gives you what you want (it removes any instance of '[' or ']'):
gsub("\\[|\\]", "", n)
Solution 3:
The other answers should be enough to get your desired output. I just wanted to provide a brief explanation of why what you tried didn't work.
paste
concatenates character strings. If you paste
an empty character string, ""
, to something with a separator that is also an empty character string, you really haven't altered anything. So paste
can't make a character string shorter; the result will either be the same (as in your example) or longer.