Các hàm xử lý chuỗi trong c#, xử lý chuỗi căn bản trong c#

Thảo luận trong 'Lập trình phần mềm' bắt đầu bởi admin, 9/9/14.

  1. admin

    admin Phạm Công Sơn Thành viên BQT

    Tham gia ngày:
    22/5/13
    Bài viết:
    4,171
    Đã được thích:
    900
    Điểm thành tích:
    113
    Giới tính:
    Nam
    ham-xu-ly-chuoi-trong-c-sharp-asp-net-mvc.jpg
    Để xử lý chuỗi tốt trong lập trình c#, trong asp.net, bạn đọc các hàm sau để hiểu rõ hơn
    1. Khai báo chuỗi
    Mã:
    
    string str ,str1,str2; // khai báo danh sách chuỗi
    str="hàm xử lý, xữ lý chuỗi c# tại itseovn"; //gán giá trị chuỗi
    str1="xử lý chuỗi 1 trong c#";
    str2="xử lý chuỗi 2 trong c#";
    
    
    2. Lấy chiều dài chuỗi
    • str.Length: lấy chiều dài chuỗi
    3. So sánh 2 chuỗi

    Cách 1: sử dụng == không phân biệt chữ hoa và thường khi so sánh
    Mã:
    str1 == str2
    • Kết quả trả về là True (2 chuỗi bằng nhau, giống nhau), False (2 chuỗi không bằng nhau, không giống nhau)
    Ví dụ:
    Mã:
    string str1 = "xử lý chuỗi itseovn";
    string str2 = "xử lý chuỗi tại itseovn";
    if(str1==str2){
         //thực hiện code khi bằng true
    }else{
        //thực hiện code khi bằng false
    }
    Ví dụ 2:
    Mã:
    string str1 = "xử lý chuỗi itseovn";
    string str2 = "xử lý chuỗi tại itseovn";
    string ketquasosanh = (str1 == str2 ? "2 chuỗi giống nhau" : "2 chuỗi khác nhau");
    Console.WriteLine(ketquasosanh);
    
    • Kết quả nhận được là: 2 chuỗi khác nhau
    Cách 2: sử dụng String.Compare (phân biệt hoa thường và không phân biệt hoa thường)
    Mã:
    String.Compare(str1,str2,true) 
    • Hàm trả về giá trị số == 0, < 0,> 0, so sánh hai chuỗi không phân biệt hoa thường.(str1 bằng, nhỏ hơn, lớn hơn str2), hàm sẽ trả về 0 là giống nhau, > 0 hay < 0 là 2 chuỗi khác nhau. True: không phân biệt chữ hoa chữ thường
    • Đổi thành false là phân biệt chữ hoa chữ thường.
    VD: Kiểm tra xem 2 chuỗi có giống nhau hay không.
    Mã:
    if (String.Compare(str1, str2, true) == 0)
    {
         Console.Write("Giống nhau, không phân biệt hoa thường");
    }
    else if (String.Compare(str1, str2, true) < 0)
    {
         Console.Write("str1 nhỏ hơn str2, không phân biệt hoa thường");//cái khác tương tự
    }
    
    • String.Compare(str1,str2,false) giống như trên, nhưng phân biệt chữ hao và chữ thường.
    Ví dụ:
    Mã:
    string s1 = "itseovN";
    string s2 = "itseovn";
    Console.WriteLine(String.Compare(s1, s2, false));
    
    • Kết quả nhận được là : 1 => 2 chuỗi không giống nhau khi phân biệt chữ hoa và thường.
    Mã:
    string s1 = "itseovn";
    string s2 = "itseovN";
    Console.WriteLine(String.Compare(s1, s2, false));
    
    • Kết quả nhận được là : -1 => 2 chuỗi không giống nhau khi phân biệt chữ hoa và thường.
    Cách 3: sử dụng Equals (có phân biệt chữ hoa và thường khi so sánh)
    Mã:
    str1.Equals(str2)
    • Hàm trả về giá trị true (2 chuỗi bằng), false (2 chuỗi không bằng)
    VD:
    Mã:
    string s1 = "itseovN";
    string s2 = "itseovn";
    string s3 = "itseovn";
    Console.WriteLine('Kết quả 1: ' + s1.Equals(s2));
    Console.WriteLine('Kết quả 2: ' + s2.Equals(s3 ));
    
    • Kết quả nhận được Kết quả 1: false (2 chuỗi không bằng nhau khi phân biệt chữ hoa và chữ thường)
    • Kết quả 2: true (2 chuỗi bằng nhau khi phân biệt chữ hoa và chữ thường)
    5. Kiểm tra đầu chuỗi và cuối chuỗi có tồn tại chuỗi cần tìm hay không?

    StartsWith & EndsWith là 2 hàm kiểm tra xem đầu chuỗi hoặc cuối chuỗi có tồn tại ký tự hoặc chuỗi ký tự cần tìm hay không?

    StartsWith()
    • Hàm trả về giá trị True là chuỗi có tồn tại, False là không tồn tại
    VD: cần kiểm tra xem ở đầu chuỗi www xử lý chuỗi itseovn có tồn tại chuỗi www hay không thì làm như sau:
    Mã:
    string MyString = "www xử lý chuỗi itseovn";
    var value = MyString.StartsWith("www");
    Console.WriteLine(value);
    
    • Kết quả nhận được là: True có tồn tại
    EndsWith()
    • Hàm trả về giá trị True là chuỗi có tồn tại, False là không tồn tại
    VD: cần kiểm tra xem ở cuối chuỗi www xử lý chuỗi itseovn có tồn tại chuỗi itseovn hay không thì làm như sau:
    Mã:
    string MyString = "www xử lý chuỗi itseovn";
    var value = MyString.EndsWith("itseovn");
    Console.WriteLine(value);
    
    5. Kiểm tra sự tồn tại của chuỗi 1 trong chuỗi 2
    • Str1.Contains(Str2) :Kiểm tra trong chuỗi Str1 có chuỗi Str2 hay không?
    6. Tìm vị trí hiển thị của chuỗi
    • Str1.IndexOf("chuỗi"): Vị trí xuất hiện đầu tiên của ký tự "chuỗi" trong Str1.
    • Trả về -1 nếu trong Str1 không có ký tự "chuỗi".
    7. Tìm vị trí xuất hiện cuối cùng của chuỗi
    • Str1.LastIndexOf("chuỗi"): Vị trí xuất hiện cuối cùng của ký tự "chuỗi" trong Str1.
    • Trả về -1 nếu trong Str1 không có ký tự "chuỗi".
    8. Kiểm tra xem chuỗi 1 có bắt bầu bằng ký tự trong chuỗi 2 không.
    • Str1.StartsWith(Str2):Kiểm tra xem chuỗi Str1 có bắt đầu bằng chuỗi Str2 không?
    9. Thay thế chuỗi
    • Str = Str.Replace(",","."):Thay thế dấu ',' thành dấu '.' trong chuỗi Str.
    • Str = Str.Replace("xử lý","hàm chuỗi"):Thay thế chuỗi 'xử lý' thành chuỗi ''hàm chuỗi' trong chuỗi Str
    10. Cắt chuỗi con
    • Str1 = Str.SubString(4):Tạo chuỗi con từ chuỗi Str bắt đầu từ vị trí 4 đến hết
    • Str1 = Str.Substring(0,8): Cắt chuỗi từ vị trí đầu tiên(vị trí 0) đến vị trí số 8, kết quả là 'hàm xử'
    11. Tách chuỗi .Split
    • Dùng để phân tách các ký tự bất kỳ.
    VD:
    Mã:
    string[] arrListStr = str.Split(',');//tách trong chuỗi str trên khi gặp ký tự ','
    //kết quả arrListStr[0]='hàm xử lý' và arrListStr[1]='xữ lý chuỗi c#'
    
    Hoặc
    Mã:
    string[] arrListStr = str.Split(new char[] { ',' });//tách trong chuỗi str trên khi gặp ký tự ','
    //kết quả arrListStr[0]='hàm xử lý' và arrListStr[1]='xữ lý chuỗi c#'
    
    VD: kiểm tra số lần hiển thị của 1 chuỗi bao nhiêu lần thì làm như thế nào? nhanh nhất ra sao
    Mã:
    string[] arrListStr = str.Split(new char[] { 'i' });//tách trong chuỗi str trên khi gặp ký tự 'i'
    int chieudaichuoi = arrListStr.Length-1;
    
    12. Chuyển chữ hoa sang chữ thường và ngược lại
    • Str1 = Str.ToLower() :Chuyển chuỗi sang chữ thường
    • Str1 = Str.ToUpper() Chuyển chuỗi sang chữ hoa
    13. Cắt hết khoảng trắng ở đầu và cuối.
    • Str = Str.Trim() Cắt hết khoảng trắng ở đầu và cuối chuỗi
    • Str = Str.TrimLeft() Cắt hết khoảng trắng ở đầu chuỗi
    • Str = Str.TrimRight() Cắt hết khoảng trắng ở cuối chuỗi
    14. Xóa chuỗi
    • Str1.Remove(2): Xóa chuỗi Str1 từ vị trí 2 đến hết.
    • Str.Remove(4,9) : Xóa 1 chuỗi con trong Str1 có chiều dài là 6. Từ vị trí 4 đến vị trí 9
    15. Cắt/Xóa ký tự đặc biệt hay bất kỳ ở đầu và cuối chuỗi.

    Xóa ký tự đặc biệt hay chỉ định bất kỳ ở đầu chuỗi:
    • TrimStart(KyTuCanXoa)
    • Hàm xóa đầu chuỗi những ký tự hoặc chuỗi ký tự được truyền vào.
    • Có thể xóa được cả mảng ký tự cần xóa với
    • KyTuCanXoa: là 1 ký tự hoặc 1 mảng ký tự cần xóa
    Ví Dụ:
    Mã:
    string MyString = "-Xử lý chuỗi C#";
    string NewString = MyString.TrimStart('-');
    
    Ví dụ:
    Mã:
    string MyString = "- Xử lý chuỗi C#";
    char[] MyChar = {'X','-',' ' };
    string NewString = MyString.TrimStart(MyChar);
    
    • Kết quả nhận được là: ử lý chuỗi C#
    Xóa ký tự đặc biệt hay chỉ định bất kỳ ở đầu chuỗi:
    • TrimEnd(KyTuCanXoa)
    • Hàm xóa cuối chuỗi những ký tự hoặc chuỗi ký tự được truyền vào.
    • Có thể xóa được cả mảng ký tự cần xóa với
    • KyTuCanXoa: là 1 ký tự hoặc 1 mảng ký tự cần xóa
    Ví Dụ:
    Mã:
    string MyString = "Xử lý chuỗi C#";
    string NewString = MyString.TrimEnd('#');
    
    Ví dụ:
    Mã:
    string MyString = "Xử lý chuỗi C#";
    char[] MyChar = {'C','#',' ' };
    string NewString = MyString.TrimStart(MyChar);
    
    Ví dụ chung:
    Mã:
    string MyString = "H- Xử lý chuỗi trong c# tại itseovn!!";
    char[] MyChar = {'H','-',' ' };
    string NewString = MyString.TrimStart(MyChar);
    NewString = NewString.TrimEnd('!');
    Console.WriteLine(NewString);
    
    Chúc các bạn thành công
     
    Cảm ơn đã xem bài:

    Các hàm xử lý chuỗi trong c#, xử lý chuỗi căn bản trong c#

    danh sách diễn đàn rao vặt gov chất lượng
    Chỉnh sửa cuối: 21/9/18 lúc 11:57 AM
  2. myonline84

    myonline84 Thành Viên Mới

    Tham gia ngày:
    20/1/16
    Bài viết:
    6
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    Xin hỏi để so sánh chuỗi chúng ta có thể sử dụng toán tử == được không và vì sao? Vì thực tế chúng ta vẫn sử dụng toán tử này để so sánh 2 số.

    Xin cảm ơn.
     
  3. admin

    admin Phạm Công Sơn Thành viên BQT

    Tham gia ngày:
    22/5/13
    Bài viết:
    4,171
    Đã được thích:
    900
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Được bạn nhé, vì khi bạn so soánh bất kỳ kiểu số, text,... thì đều được chuyển ra kiểu dữ liệu chuyên biệt để kiểm tra, nên chuỗi hay số đều như nhau thôi.
     
  4. okduocthoi1

    okduocthoi1 Thành Viên Mới

    Tham gia ngày:
    16/9/16
    Bài viết:
    69
    Đã được thích:
    0
    Điểm thành tích:
    6
    Giới tính:
    Nam
    đúng cái mình cần thank bác
     
  5. hieuoutliers

    hieuoutliers Thành Viên Mới

    Tham gia ngày:
    1/7/16
    Bài viết:
    8
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    bài viết rất hay thanks bạn rất nhiều chúc bạn thành công và hạnh phúc
     
  6. leetoan82

    leetoan82 Thành Viên Mới

    Tham gia ngày:
    26/5/16
    Bài viết:
    28
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nữ
    tks chủ thớt, bài viết rất hay chúc bạn thành công và hạnh phúc
     
  7. chunglh

    chunglh Thành Viên Mới

    Tham gia ngày:
    7/2/17
    Bài viết:
    5
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    giải thích cho e lệnh này
     
  8. silgmr

    silgmr Thành Viên Mới

    Tham gia ngày:
    23/3/17
    Bài viết:
    7
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    cảm ơn bạn, bài chia sẻ rất hay
     


Like và Share ủng hộ ITSEOVN

Người dùng tìm kiếm ITSEOVN trên công cụ tìm kiếm

  1. xóa một chuỗi ở vị trí pos kéo dài n

    ,
  2. xử lí chuỗi trong c#