So sánh chuỗi không phân biệt hoa thường libree

1. Khai báo chuỗi: c#

string str ,str1,str2; // khai báo danh sách chuỗi str="hàm xử lý, xữ lý chuỗi c#"; //gán giá trị chuỗi str1="xử lý chuỗi 1"; str2="xử lý chuỗi 2";

2. Lấy chiều dài chuỗi:

str.Length

3. So sánh 2 chuỗi:

String.Compare(str1, str2, true)

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

VD: Kiểm tra xem 2 chuỗi có giống nhau hay không

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");  
}

String.Compare(str1, str2, false)

Giống như trên, nhưng phân biệt chữ hoa và chữ thường.

4. Kiểm tra sự tồn tại của chuỗi 1 (Str1) trong chuỗi 2 (Str2):

Str1.Contains(Str2)

5. Tìm vị trí hiển thị của chuỗi:

Str1.IndexOf("chuỗi")

Hàm trả về 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”.

6. Tìm vị trí xuất hiện cuối cùng của chuỗi:

Str1.LastIndexOf("chuỗi")

Hàm trả về 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”.

7. Kiểm tra xem chuỗi 1 (Str1) có bắt bầu bằng ký tự trong chuỗi 2 (Str2) không:

Str1.StartsWith(Str2)

8. Thay thế chuỗi:

Str = Str.Replace(",",".")

Thay thế dấu ‘,’ thành dấu ‘.’ trong chuỗi Str.

str.Length

0

Thay thế chuỗi ‘xử lý’ thành chuỗi ”hàm chuỗi’ trong chuỗi Str.

9. Cắt chuỗi con:

str.Length

1

Tạo chuỗi con từ chuỗi Str bắt đầu từ vị trí 2 đến hết.

str.Length

2

Cắt chuỗi từ vị trí đầu tiên(vị trí 0) đến vị trí số 6, kết quả là ‘hàm xử’.

10. Tách chuỗi:

str.Length

3

Vd:

//tách trong chuỗi str trên khi gặp ký tự ‘,’

str.Length

4

//kết quả

str.Length

5

Hoặc:

//tách trong chuỗi str trên khi gặp ký tự ‘,’

str.Length

6

//kết quả

str.Length

7

11. Chuyển chữ hoa sang chữ thường và ngược lại:

str.Length

8

Cắt hết khoảng trắng ở đầu và cuối chuỗi

str.Length

9

Cắt hết khoảng trắng ở đầu chuỗi

String.Compare(str1, str2, true)

0

Cắt hết khoảng trắng ở cuối chuỗi 13. Xóa chuỗi:

String.Compare(str1, str2, true)

1

Xóa chuỗi Str1 từ vị trí 1 đến hết.

String.Compare(str1, str2, true)

2

Xóa 1 chuỗi con trong Str1 có chiều dài là 5. Từ vị trí 1 đến vị trí 5 Chúc các bạn thành công!

Tham khảo

C++


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

2 có sẵn các hàm để thao tác dữ liệu của loại


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

2. Hàm


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8 là một hàm trong thư viện C được sử dụng để so sánh hai chuỗi theo cách từ điển.

cú pháp strcmp()

  • Chuỗi đầu vào phải là một mảng

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    5 của Chuỗi kiểu C.
  • Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    6 cũng so sánh các chuỗi ở dạng phân biệt chữ hoa chữ thường.

int strcmp(const char *str1, const char *str2);

Hàm này trả về các giá trị sau theo các trường hợp phù hợp:

  • Trả về

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    7 nếu cả hai chuỗi giống nhau.
  • Trả về

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    8 (nhỏ hơn 0) nếu giá trị của ký tự của chuỗi đầu tiên nhỏ hơn so với giá trị của chuỗi đầu vào thứ hai.
  • Kết quả là

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    9 (lớn hơn 0) khi chuỗi thứ hai lớn hơn khi so sánh.

strcmp() Ví dụ 1

Chạy đoạn mã sau:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

Điều này sẽ tạo ra đầu ra sau:


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

0 dẫn đến


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

1. Các giá trị của


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

2 và


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

3 là khác nhau.

strcmp() Ví dụ 2

Chạy đoạn mã sau:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

Điều này sẽ tạo ra đầu ra sau:


Output

String 1: String Match
String 2: String Match
Both the input strings are equal.

# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

0 dẫn đến


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

7. Giá trị của


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

2 và


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

3 giống nhau.

2. Sử dụng hàm so sánh() trong C++

C++ có hàm


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8 tích hợp để so sánh hai chuỗi.

so sánh() Cú pháp

Hàm


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8 so sánh hai chuỗi:

int compare (const string& string-name) const;

Hàm này trả về các giá trị sau theo các trường hợp phù hợp:

  • Trả về

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    7 nếu cả hai chuỗi giống nhau.
  • Trả về

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    8 (nhỏ hơn 0) nếu giá trị của ký tự của chuỗi đầu tiên nhỏ hơn so với giá trị của chuỗi đầu vào thứ hai.
  • Kết quả là

    Output String 1: String Match String 2: String Unmatch The input strings are not equal.

    9 (lớn hơn 0) khi chuỗi thứ hai lớn hơn khi so sánh.

Ví dụ 1: Sử dụng so sánh()

Chạy đoạn mã sau:


# include 
int main()
{
  std::string str_inp1("String Match");
  std::string str_inp2("String Match");
  std::cout << "String 1: " << str_inp1 << std::endl;
  std::cout << "String 2: " << str_inp2 << std::endl;
  int res = str_inp1.compare(str_inp2);
  if (res == 0)
    std::cout << "\nBoth the input strings are equal." << std::endl;
  else if (res < 0)
    std::cout << "\nString 1 is smaller as compared to String 2." << std::endl;
  else
    std::cout << "\nString 1 is greater as compared to String 2." << std::endl;
}

Trong ví dụ này,


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

2 và


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

3 được so sánh với


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8:


Output

String 1: String Match
String 2: String Match
Both the input strings are equal.

Cả hai chuỗi đều giống nhau về mặt từ điển, vì vậy hàm trả về


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

7.

Ví dụ 2: Sử dụng so sánh()

Chạy đoạn mã sau:


# include 
int main()
{
    std::string str_inp0("String Match");
    std::string str_inp1("String Match");
    std::string str_inp2("String Unmatch");
    std::cout << "String 1: " << str_inp1 << std::endl;
    if (str_inp1.compare(str_inp0) == 0)
        std::cout << "\nStrings are equal." << std::endl;
    else
        std::cout << "\nStrings are not equal." << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (str_inp2.compare(str_inp0) == 0)
        std::cout << "\nStrings are equal." << std::endl;
    else
        std::cout << "\nStrings are not equal." << std::endl;
}

Trong ví dụ này,


Output

String 1: String Match
String 2: String Match
Both the input strings are equal.

7 được so sánh với


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

2:


Output

String 1: String Match
Strings are equal.

Sau đó,


Output

String 1: String Match
String 2: String Match
Both the input strings are equal.

7 được so sánh với


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

3:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

0

Đoạn mã này so sánh trực tiếp một chuỗi với một chuỗi đầu vào khác với hàm


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8.

3. Toán tử quan hệ trong C++

Các toán tử quan hệ trong C++ như


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

0 (bằng kép) và


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

1 (không bằng) có thể hữu ích trong việc so sánh các chuỗi.

Toán tử quan hệ Cú pháp

Kiểm tra xem hai giá trị có bằng nhau không:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

1

Kiểm tra xem hai giá trị có khác nhau không:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

2

Ví dụ 1: Sử dụng toán tử == trong C++

Chạy đoạn mã sau:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

3

Cung cấp giá trị cho \Chuỗi 1” và \Chuỗi 2”:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

4

Mã này sẽ so sánh hai chuỗi với


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

0.

Ví dụ 2: Sử dụng toán tử != của C++

Chạy đoạn mã sau:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

5

Cung cấp giá trị cho \Chuỗi 1” và \Chuỗi 2”:


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Unmatch";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

6

Mã này sẽ so sánh hai chuỗi với


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

1.

Phần kết luận

Trong bài viết này, bạn đã học các phương pháp so sánh chuỗi trong C++. Điều này bao gồm hàm


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

2 của


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

6, hàm


# include 

# include 
int main()
{
    const char *str_inp1 = "String Match";
    const char *str_inp2 = "String Match";
    std::cout << "String 1: " << str_inp1 << std::endl;
    std::cout << "String 2: " << str_inp2 << std::endl;
    if (strcmp(str_inp1, str_inp2) == 0)
        std::cout << "\nBoth the input strings are equal." << std::endl;
    else
        std::cout << "\nThe input strings are not equal." << std::endl;
}

8 tích hợp sẵn và các toán tử quan hệ (


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

0,


Output

String 1: String Match
String 2: String Unmatch
The input strings are not equal.

1).