This or that
1語を探すのは簡単ですよね。でも、ちょうど2語や3語を探すのは、普通の「Control + F」検索ではできません。正規表現なら、これを実現する検索パターンを定義できます。str_view() を使うと、正規表現がどこにマッチしたかを確認できます。
複数の語をパイプ演算子 | でつなぐと、パイプの前と後のどちらにもマッチします。しかも2つに限りません。Hello Anna|Berta|Colin のように、2つのパイプで3つの候補をつなぐこともできます。
さらに、かっこで語をまとめてグループ化できます。たとえば Hello (Anna|Berta|Colin) を探すと、上のパターンとは異なる結果になります。両方を試して、結果を比べてみてください。
この演習はコースの一部です
Rで学ぶ中級正規表現
演習の手順
"Finding "で始まり、その後に"Nemo"、"Harmony"、"Dory"のいずれかが続く映画を検索するパターンを作成します。- 次に、3つの候補をかっこ
()で囲んだ同じパターンを作成し、結果を比較します。 - 映画名
"Finding Nemo"、"Finding Harmony"、"Finding Dory"の全文字列にマッチする方のパターンを選び、それを3つ目のstr_match()呼び出しに渡してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Append the three options: Match Nemo, Harmony or Dory
str_view(lines, pattern = "Finding ___")
# Wrap the three options in parentheses and compare the results
str_view(lines, pattern = "Finding ___")
# Use the pattern from above that matched the whole movie names
str_match(lines, pattern = "Finding ___")