Tìm và thay thế
Hàm str_replace() là một hàm tổng quát để thay thế các phần của một chuỗi. Một cách dùng phổ biến là thay thế một phần bằng chuỗi rỗng — cách đơn giản để loại bỏ những phần không cần thiết khỏi chuỗi.
Với các nhóm bắt (capturing groups), str_replace() còn thú vị hơn: Chúng cho phép bạn thay đổi thứ tự các thành phần. Bằng cách thêm "tham chiếu lùi" (backreference) vào chuỗi thay thế, str_replace() sẽ thay thế các tham chiếu này bằng nội dung của nhóm bắt tương ứng. Ví dụ: Nếu bạn viết \\1, nó sẽ được thay bằng nội dung của nhóm bắt thứ nhất.
Trong bài tập này, bạn sẽ thấy cả hai cách dùng: (1) xóa một chuỗi con, và (2) hoán đổi thứ tự hai phần của một chuỗi, đặt cạnh nhau. Trong phạm vi làm việc, bạn sẽ thấy biến top_10_lines từ bài trướ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
- Xóa
3Dở cuối mỗi dòng trongtop_10_linesbằng cách thay nó bằng chuỗi rỗng. - Tạo một câu mới từ hai nhóm bắt. Hoán đổi chúng để được ví dụ như
"Karate Kid is on rank 1".
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.
# Remove a space followed by "3D" at the end of the line
str_replace(
top_10_lines,
pattern = "___",
replacement = ___
)
# Use backreferences 2 and 1 to create a new sentence
str_replace(
top_10_lines,
pattern = "(\\d+)\\. (.*)",
replacement = "___ is at rank ___"
)