Khi bạn chưa rõ mình đang tìm gì
Đến giờ bạn đã dùng str_detect() — hàm trả về TRUE nếu mẫu khớp và FALSE nếu không. Nhưng biểu thức chính quy cũng rất giỏi trong việc trích xuất cụm khớp từ một lượng văn bản lớn hơn. Bạn có thể dùng hàm str_match() cho mục đích này.
Ký tự đặc biệt tiếp theo bạn sẽ gặp là dấu chấm: ".". Dấu chấm khớp với bất kỳ ký tự nào, giống như một ký tự đại diện. Vì vậy, nếu bạn tìm "...", bạn sẽ tìm thấy ba ký tự — có thể là chữ cái, chữ số, hoặc thậm chí là khoảng trắng.
Điều này rất tiện, trừ khi bạn cần tìm đúng dấu chấm câu thực sự ".". Khi đó, hãy escape dấu chấm bằng hai dấu gạch chéo ngược: "\\."
Bài tập này là một phần của khóa học
Regular Expressions nâng cao trong R
Hướng dẫn bài tập
- Khớp không chỉ
Saw 4mà cả các phần tiếp theo khác. - Khớp bốn ký tự đầu tiên của tất cả tựa phim bắt đầu bằng
"K". - Phát hiện bộ phim kết thúc bằng dấu chấm câu thực sự
".".
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Here's an example pattern that will find the movie Saw 4
str_match(movie_titles, pattern = "Saw 4")
# Match all sequels of the movie "Saw"
str_match(movie_titles, pattern = "___")
# Match the letter K and three arbitrary characters
str_match(movie_titles, pattern = "^K___")
# Detect whether the movie titles end with a full stop
str_detect(movie_titles, pattern = "___$")