Страница 1 из 1
Поиск точного совпадения grep
Добавлено: 26 июн 2020, 17:27
VistaSV30
Добрый день!
Подскажите почему не получается найти только точное совпадение:
Код: Выделить всё
s <- c("раз", "раза", "разы")
grep("раз", s, value = T, fixed = T)
[1] "раз" "раза" "разы"
Функция возвращает все слова из вектора, где есть слово "раз", а мне нужно точное совпадение.
Или может быть нужно использовать другую функцию?
Спасибо!
Re: Поиск точного совпадения grep
Добавлено: 26 июн 2020, 17:55
antonv
VistaSV30, а если попробовать:
Re: Поиск точного совпадения grep
Добавлено: 26 июн 2020, 18:49
VistaSV30
Подскажите еще.
Если у меня такая таблица
Код: Выделить всё
V1 V2 V3
1 автомобиль автомобиля автомобилей
2 автономная автономных автономных
3 автоцистерна автоцистерны автоцистерн
4 аналогичный аналогичных аналогичных
5 был было было
6 был были были
То как в ней определить номер строки, где находится нужное слово?
Re: Поиск точного совпадения grep
Добавлено: 26 июн 2020, 19:47
antonv
VistaSV30,
Код: Выделить всё
which(my_table == "аналогичный", arr.ind=TRUE)
вернёт строку и столбец.
Re: Поиск точного совпадения grep
Добавлено: 26 июн 2020, 21:41
gamm
VistaSV30 писал(а): ↑26 июн 2020, 17:27
Подскажите почему не получается найти только точное совпадение:
Потому, что патерн поиска так написан. Поставьте в начале признак начала строки, а в конце признак конца строки. Читайте доки, и у меня в примере были.
Re: Поиск точного совпадения grep
Добавлено: 27 июн 2020, 07:19
VistaSV30
antonv писал(а): ↑26 июн 2020, 19:47
вернёт строку
Такой вариант тоже сработал:
Re: Поиск точного совпадения grep
Добавлено: 27 июн 2020, 07:22
VistaSV30
gamm писал(а): ↑26 июн 2020, 21:41
Читайте доки
Хотелось бы, всё почитать и самому найти ответ. Но видимо лень не даёт.
Раньше всё по книжкам искал, теперь вот проще на форуме спросить