R gsub несколько условий
Я пытаюсь использовать gsub для набора строк, которые могут слегка отличаться в формулировке;
I went to the store last night
I went to the park yesterday
I went to starbucks this morning
Мне нужно использовать gsub для замены "Я пошел в...", но иногда у него будет "", а иногда нет
Как то так, но следующее не будет работать должным образом
gsub('i went to [the|a-z]','REPLACED',string)
REPLACED last night
REPLACED yesterday
REPLACED this morning
2 ответа
Решение
Вы могли бы использовать stringr
пакет со следующим регулярным выражением (закрепленным в начале строки с помощью ^
):
library(stringr)
sentences <- c("I went to the store last night",
"I went to the park yesterday",
"I went to starbucks this morning")
str_replace(sentences, "^I went to( the)?", "REPLACED")
# [1] "REPLACED store last night" "REPLACED park yesterday"
# [3] "REPLACED starbucks this morning"
Если есть несколько экземпляров для замены в одной строке, вы можете пропустить ^
и использовать str_replace_all()