Filtros usando Expressões Regulares

Olá!

Essa dúvida surgiu em uma aula no curso “R para Ciência de Dados I”

Contexto: A base é a imdb, contendo informações sobre filmes. Estamos filtrando filmes que tenham o gênero Ação OU Ficção científica, usando funções do pacote stringr.

library(tidyverse)

imdb <- read_delim("https://raw.githubusercontent.com/curso-r/202010-r4ds-1/master/dados/imdb2.csv", ";", escape_double = FALSE, trim_ws = TRUE)

imdb %>% filter(stringr::str_detect(generos, "Action") |
                      stringr::str_detect(generos, "Sci-Fi"))

Como podemos fazer o mesmo filtro utilizando expressões regulares (RegEx) e a função stringr::str_detect(), de forma que não seja necessário repetir essa função str_detect() dentro do filtro?

1 Curtida

Uma solução:

imdb %>% filter(stringr::str_detect(generos, "Action|Sci-Fi"))