1. 学ぶ
  2. /
  3. コース
  4. /
  5. R 中級

Connected

演習

sub と gsub (2)

正規表現は、手を動かし、例を見ることで身につける典型的なトピックです。この演習の正規表現で頭を悩ませる前に、今回使う新しい要素を確認しましょう。

  • .*:おなじみですね。ゼロ回以上繰り返される任意の文字、という意味です。
  • \\s:スペースにマッチします。通常は文字である「s」をエスケープ(\\)することでメタ文字になります。
  • [0-9]+:0〜9 の数字に1回以上(+)マッチします。
  • ([0-9]+):丸括弧は、マッチした文字列の一部を取り出して、置換の定義に使えるようにするためのものです。sub() の replacement 引数内の \\1 は、正規表現 [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 はすでにワークスペースで定義されているので、すぐにコンソールで試せます。

指示

50 XP

選択肢