sub & gsub (2)
Reguliere expressies leer je typisch door te doen en door andere voorbeelden te zien. Voordat je je hoofd breekt over de reguliere expressie in deze oefening, bekijk eerst de nieuwe zaken die gebruikt worden:
.*: Een usual suspect! Dit kun je lezen als: "elk teken, nul of meer keer herhaald".\\s: Komt overeen met een spatie. De "s" is normaal een teken; door te escapen (\\) wordt het een metateken.[0-9]+: Komt overeen met de cijfers 0 tot en met 9, ten minste één keer (+).([0-9]+): De haakjes worden gebruikt om delen van de match beschikbaar te maken voor de vervanging. De\\1in hetreplacement-argument vansub()wordt gezet op de string die wordt vastgelegd door de reguliere expressie[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)
Wat geeft deze code terug? awards is al gedefinieerd in de werkruimte, dus je kunt meteen in de console gaan spelen.
Deze oefening maakt deel uit van de cursus
R voor gevorderden
Praktische interactieve oefening
Zet theorie om in actie met een van onze interactieve oefeningen.
Begin met trainen