Làm việc với String
Đối tượng xâu ký tự (String)
Trong C#, bạn có thể sử dụng các chuỗi (string) như là mảng các ký tự. Tuy nhiên, phổ biến hơn là để sử dụng từ khóa string để khai báo một biến chuỗi. Từ khóa string là một alias cho lớp System.String trong C#.
Tạo một đối tượng xâu ký tự
Bạn có thể tạo đối tượng String bởi sử dụng một trong các phương thức sau:
- Bằng việc gán một hằng chuỗi cho một biến String
- Sử dụng một constructor của lớp String
- Sử dụng toán tử nối chuỗi (+)
- Bởi việc thu nhận một thuộc tính hoặc gọi một phương thức mà trả về một chuỗi
- Bằng việc gọi một phương thức định dạng để chuyển đổi một giá trị hoặc một đối tượng thành biểu diễn chuỗi của nó.
Ví dụ StringMethodsDemo sau đây sẽ minh họa các phương thức để tạo một chuỗi trong C#:
Thuộc tính của lớp String trong C#
Lớp String có các thuộc tính sau:
STT | THUỘC TÍNH |
---|---|
1 | Chars
Lấy đối tượng Char tại một vị trí cụ thể trong đối tượng String hiện tại |
2 | Length
Lấy số ký tự của đối tượng String hiện tại |
Phương thức của lớp String trong C#
Lớp String có một số phương thức hữu ích cho bạn trong khi làm việc với các đối tượng String trong C#. Bảng dưới đây liệt kê các phương thức được sử dụng phổ biến nhất:
STT | PHƯƠNG THỨC |
---|---|
1 | public static int Compare(string strA, string strB)
So sánh hai đối tượng String cụ thể và trả về một integer mà chỉ vị trí có liên quan của chúng trong thứ tự sắp xếp |
2 | public static int Compare(string strA, string strB, bool ignoreCase)
So sánh hai đối tượng String cụ thể và trả về một integer mà chỉ vị trí có liên quan của chúng trong thứ tự sắp xếp. Tuy nhiên, nó bỏ qua sự phân biệt kiểu nếu tham số Boolean là true |
3 | public static string Concat(string str0, string str1)
Nối chuỗi hai đối tượng String |
4 | public bool Contains(string value)
Trả về một giá trị chỉ dẫn có hay không đối tượng String đã cho xuất hiện bên trong chuỗi này |
5 | public static string Copy(string str)
Tạo một đối tượng String mới với cùng giá trị như chuỗi đã cho |
6 | public bool EndsWith(string value)
Xác định có hay không phần kết thúc của đối tượng String là so khớp với chuỗi đã cho |
7 | public bool Equals(string value)
Xác định có hay không đối tượng String hiện tại và đối tượng String đã cho là có cùng giá trị |
8 | public static bool Equals(string a, string b)
Xác định có hay không hai đối tượng String đã cho có cùng giá trị |
9 | public static string Format(string format, Object arg0)
Thay thế một hoặc nhiều mục định dạng trong một chuỗi đã cho với biểu diễn chuỗi của một đối tượng cụ thể |
10 | public int IndexOf(string value, int startIndex)
Trả về chỉ mục (dựa trên cơ sở 0) cho sự xuất hiện đầu tiên của chuỗi đã cho trong Instance (sự thể hiện) này, bắt đầu tìm kiếm tại vị trí của ký tự đã cho |
11 | public string Insert(int startIndex, string value)
Trả về một chuỗi mới trong đó một chuỗi đã cho được chèn tại một vị trí có chỉ mục đã xác định trong đối tượng String hiện tại |
12 | public static bool IsNullOrEmpty(string value)
Chỉ rằng có hay không chuỗi đã cho là null hoặc là một chuỗi Empty |
13 | public static string Join(string separator, params string[] value)
Nối chuỗi tất cả phần tử của một mảng chuỗi, bởi sử dụng Separator (bộ tách) đã cho giữa mỗi phần tử |
14 | public int LastIndexOf(char value)
Trả về chỉ mục (dựa trên cơ sở 0) cho sự xuất hiện cuối cùng của ký tự Unicode đã cho bên trong đối tượng String hiện tại |
15 | public string Remove(int startIndex, int count)
Gỡ bỏ số ký tự đã cho trong chuỗi hiện tại bắt đầu tại một vị trí đã xác định và trả về chuỗi đó |
16 | public string Replace(string oldValue, string newValue)
Thay thế tất cả chuỗi đã cho xuất hiện trong đối tượng String hiện tại với đối tượng string đã xác định và trả về chuỗi mới |
17 | public string[] Split(params char[] separator)
Trả về một mảng chuỗi mà chứa các chuỗi phụ trong đối tượng String hiện tại, được giới hạn bởi các phần tử của một mảng ký tự Unicode đã cho |
18 | public bool StartsWith(string value)
Xác định có hay không phần bắt đầu của instance của chuỗi này so khớp với chuỗi đã cho |
19 | public char[] ToCharArray()
Trả về một mảng ký tự Unicode với tất cả ký tự trong đối tượng String hiện tại |
20 | public string ToLower()
Trả về một bản sao của chuỗi này đã được biến đổi thành chữ thường |
21 | public string ToUpper()
Trả về một bản sao của chuỗi này đã được biến đổi thành chữ hoa |
22 | public string Trim()
Gỡ bỏ tất cả ký tự whitespace từ đối tượng String hiện tại |
So sánh 2 chuỗi
Ví dụ CompareStringsDemo sẽ hướng dẫn chi tiết về cách so sánh 2 chuỗi:
Kiểm tra chuỗi có chứa nội dung
Ví dụ CheckStringContentDemo về kiểm tra nội dung chuỗi:
Lấy chuỗi con
Ví dụ SubStringDemo sau đây sẽ minh hoạ cách thức lấy chuỗi con trong 1 chuỗi khác:
Nối chuỗi:
Ví dụ ConcatStringsDemo sau đây sẽ minh hoạ cách thức nối 1 xâu vào 1 xâu khác: