1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu lập trình C tiếng Việt lesson 9 Regular expression

14 387 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 630,5 KB

Nội dung

Lập trình hướng đối tượng Bài 10: Biểu thức quy Giới thiệu • Biểu thức quy (regular expression) đặc điểm bổ sung vào thư viện chuẩn C++11 • Là ngôn ngữ khai báo cho việc xử lý chuỗi • Cú pháp mặc định C++11 ECMAScript ^$\.*+?()[]{}| • Sử dụng ký tự \ (escape character) cần thể ký tự đặc biệt chuỗi • Thí dụ: \[ \ Hoặc \* \\ Lưu ý: C++ để có ký tự \ cần vào \\ • Thí dụ ^test$ - Khớp: test - Không khớp: 1test, test2, test abc • a.c - Khớp: abc a5c - Không khớp: ab5c, ac • a*b - b, ab, aab, aaaab • a+b - Khớp ab, aab, aaaab không khớp b • a?b - Khớp b ab • ^a{3,4}$ - Khớp aaa aaaa không khớpLặp a, aa,tham aaaaa • a|b - Khớp a b lam/không tham lam (?) Nhóm • () tạo biểu thức con, tạo nhóm (capture group) • Thứ tự: – Elements: like aare the basic building blocks of a regular expression – Quantifiers: like +, *, ?and { }bind tightly to the element on the left, for example b+ – Concatenation: like ab+cbinds after quantifiers – Alternations: like | binds as last • Thí dụ: – ab+c|d – ab+(c|d) • Không tạo capture group sử dụng {?:…} • Thí dụ: ab+(?:c|d) Tập ký tự • ab[cde] khớp với abc, abd abe • ab[^cde] khớp với abf, abp không khớp với abc, abd abe • Xác định dải ký tự [a-zA-Z] Biên từ \b, biên từ \B Tham chiếu ngược \n Thí dụ: ^(\d+)-.*-\1$ Khớp: 123-abc-123, 1234-a-1234 Nhưng không: 123-abc-1234, 123-abc-321 Sử dụng raw string • Thay vì: ( |\\n|\\r|\\\\) • Viết R”(( |\n|\r|\\))” Thư viện regex • dạng khuôn hình bản: – basic_regex – match_results – sub_match • giải thuật chính: – regex_match() – regex_search() – regex_replace() 10 regex_search() 11 regex_iterator 12 regex_token_iterator 13 regex_replace() 14 [...]...regex_search() 11 regex_iterator 12 regex_token_iterator 13 regex_replace() 14 ... th c quy (regular expression) đ c điểm bổ sung vào thư viện chuẩn C+ +11 • Là ngôn ngữ khai báo cho vi c xử lý chuỗi • C pháp m c định C+ +11 ECMAScript ^$.*+?()[]{}| • Sử dụng ký tự (escape character)... character) c n thể ký tự đ c biệt chuỗi • Thí dụ: [ Ho c * \ Lưu ý: C+ + để c ký tự c n vào \ • Thí dụ ^test$ - Khớp: test - Không khớp: 1test, test2, test abc • a .c - Khớp: abc a 5c -... lam/không tham lam (?) Nhóm • () tạo biểu th c con, tạo nhóm (capture group) • Thứ tự: – Elements: like aare the basic building blocks of a regular expression – Quantifiers: like +, *, ?and {

Ngày đăng: 28/03/2016, 01:07

TỪ KHÓA LIÊN QUAN