Regular Expressions nâng cao trong R
Angelo Zehr
Data Journalist
"cat" có bắt đầu bằng "c" không?
Cách dùng Rebus:
str_detect("cat", pattern = START %R% "c")
Biểu thức chính quy:
str_detect("cat", pattern = "^c")
str_detect(string, pattern)
str_match(string, pattern)


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",
...
| Ký tự đặc biệt | Ý nghĩa |
|---|---|
^ |
Dấu mũ: đánh dấu đầu dòng hoặc chuỗi |
$ |
Dấu đô la: đánh dấu cuối dòng hoặc chuỗi |
. |
Dấu chấm: khớp mọi ký tự: chữ, số hoặc khoảng trắng |
\\. |
Hai dấu gạch chéo ngược: thoát dấu chấm khi tìm dấu chấm thực |
| Mã | Kết quả |
|---|---|
str_match("Book", "^.") |
Khớp "B" |
str_match("Book", ".$") |
Khớp "k" |
str_match("Book", "\\.") |
Không khớp |
str_match("Book.", "\\.") |
Khớp "." |
Regular Expressions nâng cao trong R