sub & gsub (2)
Regulární výrazy jsou typický koncept, který se nejlépe učí praxí a sledováním různých příkladů. Než začneš lámat hlavu nad regulárním výrazem v tomto cvičení, podívej se na novinky, které zde uvidíš:
.*: Starý známý! Lze ho číst jako „libovolný znak, který se vyskytuje nula nebo vícekrát".\\s: Shoda s mezerou. „s" je normálně obyčejný znak, escapování (\\) z něj udělá metaznak.[0-9]+: Shoda s číslicemi 0 až 9, alespoň jednou (+).([0-9]+): Závorky slouží k tomu, aby byly části shodného řetězce dostupné pro definici náhrady.\\1v argumentureplacementfunkcesub()se nastaví na řetězec zachycený regulárním výrazem[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)
Co tento kód vrátí? Vektor awards je v prostředí už definován, takže si to můžeš rovnou vyzkoušet v konzoli.
Toto cvičení je součástí kurzu
Intermediate R
Interaktivní praktické cvičení
Proměňte teorii v praxi s jedním z našich interaktivních cvičení
Začít cvičení