Bắt đầu ngayBắt đầu miễn phí

sub & gsub (2)

Biểu thức chính quy là một khái niệm điển hình mà bạn sẽ học tốt nhất qua thực hành và xem nhiều ví dụ. Trước khi bạn vò đầu với biểu thức chính quy trong bài tập này, hãy xem qua những thứ mới sẽ dùng:

  • .*: Gương mặt quen thuộc! Có thể hiểu là "bất kỳ ký tự nào, lặp lại 0 lần trở lên".
  • \\s: Khớp một khoảng trắng. Chữ "s" vốn là ký tự thường, khi escape (\\) sẽ trở thành metacharacter.
  • [0-9]+: Khớp các chữ số từ 0 đến 9, ít nhất một lần (+).
  • ([0-9]+): Dấu ngoặc đơn dùng để lấy một phần của chuỗi khớp, nhằm dùng trong phần thay thế. \\1 trong đối số replacement của sub() sẽ được gán bằng chuỗi được bắt bởi biểu thức chính quy [0-9]+.
awards <- c("Won 1 Oscar.",
  "Won 1 Oscar. Another 9 wins & 24 nominations.",
  "1 win and 2 nominations.",
  "2 wins & 3 nominations.",
  "Nominated for 2 Golden Globes. 1 more win & 2 nominations.",
  "4 wins & 1 nomination.")

sub(".*\\s([0-9]+)\\snomination.*$", "\\1", awards)

Đoạn mã này trả về gì? awards đã được định nghĩa sẵn trong không gian làm việc nên bạn có thể bắt đầu thử ngay trong console.

Bài tập này là một phần của khóa học

R nâng cao

Xem khóa học

Bài tập tương tác thực hành

Biến lý thuyết thành hành động với một trong các bài tập tương tác của chúng tôi

Bắt đầu bài tập