Vítejte

Intermediate Regular Expressions in R

Angelo Zehr

Data Journalist

Kde jste mohli skončit

Intermediate Regular Expressions in R

Od Rebusu k vlastním výrazům

Začíná "cat" na "c"?

Způsob s rebus:

str_detect("cat", pattern = START %R% "c")

Regulární výraz:

str_detect("cat", pattern = "^c")
Intermediate Regular Expressions in R

Předpoklady: stringr

str_detect(string, pattern)
str_match(string, pattern)
Intermediate Regular Expressions in R

Co vám regulární výrazy umožní

blob textu se zvýrazněním

Intermediate Regular Expressions in R

Co vám regulární výrazy umožní

blob textu se zvýrazněním

Intermediate Regular Expressions in R

Náš první datový soubor

movie_titles <- c(
  "Karate Kid",
  "The Twilight Saga: Eclispe",
  "Knight & Day",
  "Shrek Forever After (3D)",
  "Marmaduke.",
  "Predators",
  "StreetDance (3D)",
  "Robin Hood",
  "Micmacs A Tire-Larigot",
  "Sex And the City 2",
...
movie_titles[
  str_detect(
    movie_titles,
    pattern = "^K"
  )
]
"Karate Kid",
"Knight & Day",
...
Intermediate Regular Expressions in R

Speciální znaky v regulárních výrazech

Speciální znak Význam
^ Stříška: Označuje začátek řádku nebo řetězce
$ Dolar: Označuje konec řádku nebo řetězce
. Tečka: Odpovídá čemukoli: písmenům, číslům nebo mezerám
\\. Dvě zpětná lomítka: Escapuje tečku při hledání skutečné tečky
Intermediate Regular Expressions in R

Příklad

Kód Výsledek
str_match("Book", "^.") Odpovídá "B"
str_match("Book", ".$") Odpovídá "k"
str_match("Book", "\\.") Žádná shoda
str_match("Book.", "\\.") Odpovídá "."
Intermediate Regular Expressions in R

Pojďme si procvičit!

Intermediate Regular Expressions in R

Preparing Video For Download...