35

I am trying to replace both "st." and "ste." with "st". Seems like the following should work but it does not:

require("stringr")
county <- c("st. landry", "ste. geneveve", "st. louis")
str_replace_all(county, c("st\\.", "ste\\."), "st")
emilliman5
  • 5,816
  • 3
  • 27
  • 37
MikeTP
  • 7,716
  • 16
  • 44
  • 57

2 Answers2

68

You can use | to mean "or"

> str_replace_all(county, "st\\.|ste\\.", "st")
[1] "st landry"   "st geneveve" "st louis"   

Or in base R

> gsub("st\\.|ste\\.", "st", county)
[1] "st landry"   "st geneveve" "st louis"  
GSee
  • 48,880
  • 13
  • 125
  • 145
2
> A<-"this string,  contains a handful of,  useless:  punctuation.  Some are to escape.  Aaargh! Some might be needed,  but I want none!"
> gsub(", |: |\\. |!","",A)
[1] "this string contains a handful of useless punctuation Some are to escape Aaargh Some might be needed but I want none"
Raberto
  • 55
  • 6