Grep-функция: как комбинировать символы и диапазон чисел - PullRequest
1 голос
/ 26 мая 2020

Я хочу использовать функцию grep для получения определенных c элементов из фрейма данных. Все представляющие интерес элементы начинаются с «ffcb2», но затем я хочу выбрать только те, которые заканчиваются числами от 07 до 16. Но я не знаю, как правильно включить этот диапазон в команду. Пока это выглядит так:

grep(names_data, pattern = "ffcb2[07-16]", value = TRUE)

1 Ответ

1 голос
/ 27 мая 2020

Чтобы сопоставить числа от 7 до 16, вы можете использовать numeri c range regex generator , чтобы получить следующий шаблон:

(0[7-9]|1[0-6])

Итак, ваша команда будет выглядеть как

grep(names_data, pattern = "ffcb2(0[7-9]|1[0-6])", value = TRUE)

См. демонстрацию регулярного выражения . (0[7-9]|1[0-6]) соответствует либо 0, за которым следует 7, 8 или 9, либо 1, за которым следует di git от 0 до 6.

...