gsub() in R is not replacing '.' (dot)
You may need to escape the .
which is a special character that means "any character" (from @Mr Flick's comment)
gsub('\\.', '-', x) #[1] "2014-06-09"
Or
gsub('[.]', '-', x)#[1] "2014-06-09"
Or as @Moix mentioned in the comments, we can also use fixed=TRUE
instead of escaping the characters.
gsub(".", "-", x, fixed = TRUE)
For more complex tasks the stringr package could be interesting
https://cran.r-project.org/web/packages/stringr/vignettes/stringr.html
https://github.com/rstudio/cheatsheets/raw/master/strings.pdf
library(stringr)str_replace_all(x,"\\.","-")## [1] "2014-06-09"
Or
str_replace_all(x,"[.]","-")## [1] "2014-06-09"