Bài giảng Lập trình Windows - Chapter 8 : Strings, Chars
lượt xem 5
download
Bài giảng "Lập trình Windows - Chapter 8 : Strings, Chars" cung cấp cho người học các kiến thức về: Lớp đối tượng string (Tạo một chuỗi, tạo chuỗi dùng phương thức ToString, thao tác trên chuỗi), các biểu thức quy tắc (sử dụng biểu thức quy tắc qua lớp Regex, sử dụng Regex để tìm tập hợp, sử dụng Regex để gom nhóm,...).
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình Windows - Chapter 8 : Strings, Chars
- Chapter 8 – Strings, Chars Lớp đối tượng string • Tạo một chuỗi • Tạo chuỗi dùng phương thức ToString • Thao tác trên chuỗi • Tìm một chuỗi con • Chia chuỗi • Thao tác trên chuỗi dùng StringBuilder Các biểu thức quy tắc • Sử dụng biểu thức quy tắc qua lớp Regex • Sử dụng Regex để tìm tập hợp • Sử dụng Regex để gom nhóm • Sử dụng lớp CaptureCollection Câu hỏi & bài tập Slide 1 ©
- Lớp đối tượng string Mỗi đối tượng chuỗi là một dãy cố định các ký tự Unicode. Các phương thức được dùng để làm thay đổi một chuỗi thực sự trả về một bản sao đã thay đổi, chuỗi nguyên thủy không thay đổi. Là một trong những kiểu dữ liệu được xây dựng sẵn được cung cấp bởi thư viện lớp .NET (.NET Framework Class Library) Khai báo của lớp System.String như sau: public sealed class String : IComparable, ICloneble, Iconvertible Lớp này cũng thực thi ba giao diện hệ thống là IComparable, ICloneable, và IConvertible – giao diện này cho phép lớp System.String chuyển đổi với những lớp khác trong hệ thống .NET. Slide 2 ©
- Lớp đối tượng string IComparable được thực thi bởi các kiểu dữ liệu đã được sắp xếp. Các lớp IComparable thực thi phương thức CompareTo(). ICloneable có thể tạo ra những thể hiện khác với cùng giá trị như là thể hiện nguyên thuỷ. Các lớp Icloneable thực thi phương thức Clone() – phương thức sao chép. IConvertible cung cấp phương thức để dễ dàng chuyển đổi qua các kiểu dữ liệu cơ bản khác như là ToInt32(), ToDouble(), ToDecimal(),... Slide 3 ©
- Tạo một chuỗi Khai báo và khởi tạo chuỗi hằng string newString = “Day la chuoi hang”; Chuỗi cũng có thể được tạo bằng cách sử dụng chuỗi cố định hay nguyên văn (verbatim) không thay đổi. Được bắt đầu với biểu tượng @. string literal1 = “\\\\MyDocs\\CSharp\\ProgrammingC#.cs”; string verbatim1 = @”\\MyDocs\CSharp\ProgrammingC#.cs”; Slide 4 ©
- Tạo chuỗi dùng phương thức ToString của đối tượng Gọi phương thức ToString() của một đối tượng và gán kết quả đến một biến chuỗi. int myInt = “9”; string intString = myInt.ToString(); Lớp String của .NET cung cấp rất nhiều bộ khởi dựng hỗ trợ rất nhiều kỹ thuật khác nhau để gán những giá trị chuỗi đến kiểu dữ liệu chuỗi. Truyền một mảng chuỗi như là tham số đến bộ khởi dựng của String là tạo ra một thể hiện CLRcompliant (một thể hiện đúng theo yêu cầu của CLR). Còn việc truyền một con trỏ chuỗi như một tham số của bộ khởi dựng String là việc tạo một thể hiện không an toàn (unsafe). Slide 5 ©
- Thao tác trên chuỗi Slide 6 ©
- Thao tác trên chuỗi Slide 7 ©
- Thao tác trên chuỗi Slide 8 ©
- Thao tác trên chuỗi dùng StringBuilder • Lớp StringBuilder được sử dụng để tạo ra và bổ sung các chuỗi. • Lớp này chính là phần đóng gói của một bộ khởi dựng cho một String. Slide 9 ©
- Thao tác trên chuỗi dùng StringBuilder Phương thức của lớp StringBuilder Slide 10 ©
- Các biểu thức quy tắc (Regular Expression) Một biểu thức qui tắc bao gồm hai kiểu ký tự: Ký tự bình thường (literal): những ký tự này mà chúng ta sử dụng để so khớp với chuỗi ký tự đích. Metacharacter: là các biểu tượng đặc biệt, có hành động như là các lệnh trong bộ phân tích (parser) của biểu thức. Ví dụ: ^(From|To|Subject|Date): Biểu thức này sẽ so khớp với bất cứ chuỗi con nào với những từ như “From”, “To”, “Subject”, và “Date” miễn là những từ này bắt đầu bằng ký tự dòng mới (^) và kết thúc với dấu hai chấm (:). Slide 11 ©
- Sử dụng biểu thức quy tắc qua lớp Regex MS.NET cung cấp một hướng tiếp cận hướng đối tượng (object- oriented approad) cho biểu thức quy tắc để so khớp, tìm kiếm và thay thế chuỗi. Biểu thức quy tắc của ngôn ngữ C# là được xây dựng từ lớp regexp của ngôn ngữ Perl5. Namspace System.Text.RegularExpressions của thư viện BCL (Base Class Library) chứa đựng tất cả các đối tượng liên quan đến biểu thức quy tắc trong môi trường .NET. Và lớp quan trọng nhất mà biểu thức quy tắc hỗ trợ là Regex. Demo Slide 12 ©
- Regular Expressions and Class Regex Cha ra c ter Ma tc hes Cha ra c ter Ma tc hes \d any digit \D any nondigit \w any word character \W any nonword character \s any whitespace \S any nonwhitespace Fig. 15.19 Cha ra c ter c la sses. Slide 13 ©
- Regular Expressions and Class Regex Qua ntifier Ma tc hes * Matches zero or more occurrences of the pattern. + Matches one or more occurrences of the pattern. ? Matches zero or one occurrences of the pattern. {n} Matches exactly n occurrences. {n,} Matches at least n occurrences. {n,m} Matches between n and m (inclusive) occurrences. Fig. 15.21 Qua ntifiers used reg ula r exp ressions. Slide 14 ©
- Sử dụng Regex để tìm kiếm tập hợp Hai lớp được thêm vào trong namespace .NET cho phép chúng ta thực hiện việc tìm kiếm một chuỗi một cách lặp đi lặp lại cho đến hết chuỗi, và kết quả trả về là một tập hợp. Tập hợp được trả về có kiểu là MatchCollection, bao gồm không có hay nhiều đối tượng Match. Hai thuộc tính quan trọng của những đối tượng Match là chiều dài và giá trị của nó Demo Slide 15 ©
- Sử dụng Regex để gom nhóm Lớp Group cho phép chúng ta tạo những nhóm và tìm kiếm dựa trên biểu thức quy tắc, và thể hiện kết quả từ một nhóm biểu thức đơn. Một biểu thức nhóm định rõ một nhóm và cung cấp một biểu thức quy tắc, bất cứ chuỗi con nào được so khớp bởi biểu thức quy tắc thì sẽ được thêm vào trong nhóm. Ví dụ, để tạo một nhóm chúng ta có thể viết như sau: @”(?(\d|\ .)+)\s” Lớp Match dẫn xuất từ nhóm Group, và có một tập hợp gọi là Groups chứa tất cả các nhóm mà Match tìm thấy. Demo Slide 16 ©
- Sử dụng lớp CaptureCollection Mỗi khi một đối tượng Regex tìm thấy một chuỗi con, thì môt thể hiện Capture được tạo ra và được thêm vào trong một tập hợp CaptureCollection. Một đối tượng Capture thể hiện một chuỗi con riêng. Mỗi nhóm có một tập hợp các Capture được tìm thấy trong chuỗi con có liên hệ với nhóm. Thuộc tính Length là chiều dài của chuỗi con được nắm giữ. Capture.Length do Match được dẫn xuất từ Group và đến lượt Group lại được dẫn xuất từ Capture. Một Group là một Capture (Group is-a Capture), là một đối tượng Capture đóng gói các ý tưởng về các nhóm biểu thức. Match cũng là một Group (Match is-a Group), nó đóng gói tất cả các nhóm biểu thức con được so khớp trong biểu thức quy tắc. Demo Slide 17 ©
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình Windows bằng C Sharp (C#) - GV. Nguyễn Thành Chiến
38 p | 231 | 70
-
Bài giảng Lập trình Windows - Phạm Ngọc Hưng (ĐH Bách Khoa)
312 p | 224 | 53
-
Bài giảng Lập trình Windows - ĐH Hàng Hải
96 p | 211 | 41
-
Bài giảng Lập trình Window: Chương 6 - Phan Trọng Tiến
35 p | 167 | 20
-
Bài giảng Lập trình Windows - Chương 3: Lập trình giao diện
196 p | 102 | 18
-
Bài giảng Lập trình Windows - Chương 1: Tổng quan lập trình Windows (2016)
6 p | 151 | 8
-
Bài giảng Lập trình Windows - Phạm Ngọc Hưng
84 p | 107 | 8
-
Bài giảng Lập trình Windows - Chương 3: Lập trình C++ trên Windows (2016)
16 p | 74 | 8
-
Bài giảng Lập trình Windows Phone (Module 2): Bài 1 - Trần Duy Thanh
58 p | 96 | 8
-
Bài giảng Lập trình Windows: Phần 1 - Đại học Hàng Hải
47 p | 91 | 6
-
Bài giảng Lập trình Windows Phone (Module 3): Bài 7 - Trần Duy Thanh
22 p | 64 | 6
-
Bài giảng Lập trình Windows Phone (Module 4): Bài 8 - Trần Duy Thanh
15 p | 87 | 6
-
Bài giảng Lập trình Windows: Chương 1 - Một số khái niệm cơ bản
56 p | 126 | 6
-
Bài giảng Lập trình Windows: Bài 1 - Trần Ngọc Bảo
77 p | 100 | 6
-
Bài giảng Lập trình Windows Phone (Module 4): Bài 3, 4 - Trần Duy Thanh
18 p | 69 | 5
-
Bài giảng Lập trình Windows Phone (Module 3): Bài 5 - Trần Duy Thanh
13 p | 79 | 5
-
Bài giảng Lập trình Windows Phone (Module 3): Bài 9 - Trần Duy Thanh
10 p | 59 | 4
-
Bài giảng Lập trình Windows: Bài 3 - Trần Ngọc Bảo
106 p | 74 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn