1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. R nâng cao

Connected

Bài tập

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.

Hướng dẫn

50 XP

Các phương án trả lời