Bài học theo mô-đun (2/4)
Các lớp cơ bản: \d \w \s
Ngoài các ký tự bằng chữ, biểu thức chính quy còn cung cấp cho bạn các lớp được xác định trước: phím tắt cho "bất kỳ chữ số nào", "bất kỳ ký tự từ nào", "bất kỳ khoảng trắng nào". Họ là những người đầu tiên bước tới những mô hình thực sự hữu ích.
| Lớp | Trận đấu |
|---|---|
\d | Một chữ số (0-9) |
\w | Một ký tự từ (A-Za-z0-9_) |
\s | Một khoảng trắng (dấu cách, tab, dòng mới, v.v.) |
\D | KHÔNG một chữ số |
\W | KHÔNG một ký tự từ |
\S | KHÔNG khoảng trắng |
Mỗi cái khớp với một ký tự đơn. Để khớp với "một hoặc nhiều ký tự"
bạn cần bộ định lượng (+, trong mô-đun 2), nhưng chúng tôi sẽ sử dụng + ngay
vì "tìm cho tôi hết số" quá hữu ích để chờ đợi.
Pattern: \d+
Sample: Ho 3 mele, 12 pere e 100 prugne.
^ ^^ ^^^\d+ nghĩa là một hoặc nhiều chữ số liên tiếp: nó khớp với 3, 12 và
100 thành ba kết quả phù hợp riêng biệt (với cờ g).
\w: ký tự từ
\w tương đương với [A-Za-z0-9_] (chữ cái, chữ số, dấu gạch dưới ASCII). Nó
KHÔNG bao gồm dấu, chữ cái Hy Lạp hoặc biểu tượng cảm xúc: đối với những người bạn cần Unicode
thoát thuộc tính (\p{L}, mô-đun 5).
Đi sâu vào các lớp cơ bản và phủ định
Các lớp được xác định trước \\d, \\w, \\s tăng tốc độ mã hóa. Các phiên bản viết hoa (\\D, \\W, \\S) phủ định tập hợp. Ví dụ: \\S+ ghi lại bất kỳ khối văn bản nào không có dấu cách (chẳng hạn như toàn bộ từ bao gồm cả dấu câu).
Công cụ xử lý \\s bằng cách khớp không chỉ khoảng trắng tiêu chuẩn mà còn cả các tab (\\t) và các ký tự dòng mới (\\n hoặc \\r).
Hãy thử nó
Trích xuất mọi chuỗi chữ số (số) liên tiếp từ văn bản. Sử dụng lớp `\\d` với bộ định lượng `+`.
Hiển thị gợi ý
\\d+ chụp một hoặc nhiều chữ số. Với cờ g bạn thu thập mọi trận đấu.
Giải pháp khả dụng sau 3 lần thử
Xem lại bài tập
Tìm mọi 'từ' trong văn bản: một chuỗi ký tự từ liên tục (`\\w+`).
Hiển thị gợi ý
\\w+ khớp với chuỗi các chữ cái/chữ số/dấu gạch dưới. Dấu câu được bỏ qua.
Giải pháp khả dụng sau 3 lần thử
Thử thách bổ sung
Find all sequences of one or more consecutive whitespace characters in the text (including spaces, tabs, and newlines).
Hiển thị gợi ý
Sử dụng lớp \\s với bộ định lượng + để ghi lại các chuỗi khoảng trắng liên tiếp.
Giải pháp khả dụng sau 3 lần thử