sub і gsub (2)
Регулярні вирази найкраще вивчати на практиці та на прикладах. Перш ніж ламати голову над регулярним виразом у цій вправі, зверніть увагу на нові елементи, які тут використовуються:
.*: Класика жанру! Це означає «будь-який символ, що збігається нуль або більше разів».\\s: Відповідає пробілу. Зазвичай «s» — це звичайний символ, але екранування (\\) робить його метасимволом.[0-9]+: Відповідає цифрам від 0 до 9, принаймні один раз (+).([0-9]+): Дужки використовуються, щоб зробити частини збіжного рядка доступними для підстановки під час заміни.\\1у аргументіreplacementфункціїsub()отримує рядок, який захоплюється регулярним виразом[0-9]+.
awards <- c("Won 1 Oscar.",
"Won 1 Oscar. Another 9 wins & 24 nominations.",
"1 win and 2 nominations.",
"2 wins & 3 nominations.",
"Nominated for 2 Golden Globes. 1 more win & 2 nominations.",
"4 wins & 1 nomination.")
sub(".*\\s([0-9]+)\\snomination.*$", "\\1", awards)
Що повертає цей фрагмент коду? awards уже визначено в робочому просторі, тож ви можете одразу спробувати це в консолі.
Ця вправа є частиною курсу
Середній рівень R
Практична інтерактивна вправа
Перетворіть теорію на практику за допомогою однієї з наших інтерактивних вправ
Почати вправу