sub і gsub
Хоча grep() і grepl() використовують лише для перевірки, чи відповідає регулярний вираз елементам символьного вектора, sub() і gsub() йдуть далі: ви можете вказати аргумент replacement. Якщо в середині символьного вектора x знайдено регулярний вираз pattern, відповідні елементи буде замінено на replacement. sub() замінює лише перше співпадіння, тоді як gsub() замінює всі співпадіння.
Припустімо, що вектор emails, з яким ви працювали, — це фрагмент бази електронних адрес DataCamp. Чому б не запропонувати власникам адрес із доменом .edu нову адресу на домені datacamp.edu? Це може стати потужним маркетинговим ходом: онлайн‑освіта випереджає традиційні навчальні заклади! Перетворіть свою адресу й станьте частиною нового покоління!
Ця вправа є частиною курсу
Середній рівень R
Інструкції до вправи
Скористайтеся розширеним регулярним виразом "@.*\\.edu$" і застосуйте sub(), щоб замінити знайдене співпадіння на "@datacamp.edu". Оскільки для кожного рядка буде лише одне співпадіння, gsub() тут не потрібна. Перегляньте отриманий результат.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# The emails vector has already been defined for you
emails <- c("[email protected]", "[email protected]", "[email protected]",
"invalid.edu", "[email protected]", "[email protected]")
# Use sub() to convert the email domains to datacamp.edu