D i» fta ndAr rệ jt(ộ r© Aí lcoj?
Phân loại Text
M ột kỹ n ă n g cực kỳ hữu dụng cần p h á t triể n k h i làm việc với các p h ần tử te x t là k h ả nSng p h ân loại m ột d an h sách các chuỗị Các k h á i niệm cơ b ả n tro n g việc p h â n loại th ì đơn giản. Bạn soạn r a m ộ t d a n h sách các mục để p h â n loại và so s á n h các mục từ ng cái m ột cho tới k h i d an h sách được p h â n loại th eo th ứ tự tà n g d ần hoặc giảm d ần tro n g b ả n g chữ cáị
T ro n g V isual Basic, b ạn so sá n h m ột mục với m ột mục k h ác b àn g việc sử dụng các to á n tử quan h ệ tương tự m à b ạn sử dụng d ể so s á n h các giá trị số. P h ầ n kh ó (đôi k h i đòi hỏi nhữ ng cuộc th ả o luận dài dòng giữa các n h à khoa học m áy tín h ) là th u ậ t to á n p h ân loại cụ th ể m à b ạn sử dụng để so sá n h các p h ầ n từ tro n g m ột d an h sách. Chương này sẽ không đi sâu vào các ưu điểm và k h u y ế t đ iểm của các th u ậ t to á n p h â n loại k h á c nhaụ T h ay vào đó chương n ày sẽ khảo s á t việc so s á n h chuỗi cơ b ả n được thực h iệ n n hư th ế nào tro n g việc p h â n loạị Đồng th ờ i b ạ n sẽ học n h ữ n g kỹ n ă n g cần th iế t để p h â n loại các hộp tex t, hộp d anh sách, file, v à cơ sở dữ liệu riê n g của bạn.
Trước k h i V isual B asic có th ể so s á n h một ký tự với m ột ký tự k h ác tro n g m ột kiểu p h â n loại, nó p h ả i chuyển đổi mỗi ký tự th à n h m ột sô' b ằn g việc sử dụng m ột b ản g dịch được gọi ỉà tậ p hợp ký tự ASCII (còn được gọi là tậ p hợp ký tự ANSI). (Từ ghép ASCII là v iết tắ t của A m erican S ta n d a rd Code for In form ation Interchange). Từng ký hiệu (symbol) cơ b ản m à b ạn có th ể h iể n th ị trê n m áy tín h có m ột m ã ASCII khác. N hững m ã n à y bao gồm tậ p hợp cơ b ản các ký tự "đánh m áy" (các m ă 32 đến 127) và các ký tự "điều khiển" đặc b iệ t chẳng h ạ n n h ư ta b , ký tự chuyển dòng và ký tự quay trở về đầu dòng (m ã 0 đến 31). Ví dụ chừ thường a tương đương với m ã A SC II 97, và chữ hoa A tương đương với m ã ASCII 65. K ết quả V isual B asic xử lý hai ký tự n ày h o àn to à n khác n h au k h i p h â n loại hoặc k h i thực h iệ n n h ữ n g so s á n h k h ác .
Vào nhữ ng n ăm 1980, IBM đã m ở rộng ASCII b ằn g các m ã 128 đến 255 đại diện cho các ký tự có d?u n h ấn , ký tự Hy Lạp, và ký tự đồ h ọ a cũng như các Symbol lin h tin h . A SCII v à nhữ ng ký tự và sym bols bổ su n g n ày thường được gọi là tậ p hợp ký tự m ở rộng IBM.
T ập hợp ký tự A SCII v ẫn là m ã sô' quan trọ n g n h ấ t để n h ữ n g người mới b ắ t đầu vào n g h ề lập tr ìn h học hỏi nhưng nó không p h ải là tậ p hợp ký tự duy n h ấ t. Khi th ị trường về các m áy tín h và p h ầ n m ềm ứ ng dụng đ ã trở th à n h to à n cầu hơn, m ột chuẩn to à n diện hơn cho sự đại diện ký tự được gọi là U nicode đ ã nổi lên. U nicode có th ể chứa lên đ ến 65536 sym bols - nhiều không gian để đại diện cho các Symbol truyền th ô n g tro n g tậ p hợp ký tự ASCII cộng với h ầu hếtcác ngôn ngữ quôc tế (việt) v à Symbol. M ột cơ quan tiêu chuẩn duy tr ì tậ p hợp ký tự U nicode và T hêm các sym bols vào nó theo đ ịn h kỳ. W inđows XP, W indows V ista, Windows 7, v à V isual Studio đã được th iế t k ế đặc b iệ t để quản lý các th à n h p hần ký tự A SCII v à Unicodẹ {Để b iết th ê m th ô n g tin về mõ'i quan hệ giữa các loại dữ liệu Unicode ASCII, v à Visual Basic, xem p h ầ n "Làm việc với các loại dữ liệu riên g biệt" tro n g Chương 5).
T rong các p h ầ n tiế p th eo b ạ n sẽ học th êm về việc sử dụng tậ p hợp ký tự A SCII đ ể xử lý các chuỗi tro n g các chương trìn h . Khi các ứng dụng trở nên tin h vi hcfn và b ạ n b ắ t đầu hỏch định cho việc p h â n bô” p h ầ n m ềm của bạn tr ê n p h ạm vi to à n cầu, b ạn sẽ cần tìxn hiểu th êm về U nicode và nhữ ng xác lập quốc t ế khác.