Giới thiệu
Phương thức ToLower() của lớp String trả về bản sao của chuỗi được chuyển thành chữ thường. Có overload ToLower(CultureInfo) để chỉ định văn hóa (culture) cho quy tắc chuyển đổi (ví dụ: tiếng Thổ Nhĩ Kỳ có 'I' -> 'ı' thay vì 'i').
Cú pháp
public string ToLower(); public string ToLower(CultureInfo culture);
Ví dụ 1 - ToLower cơ bản
using System;
public class Demo
{
public static void Main(string[] args)
{
string str1 = "WELCOME!";
string str2 = "Thisisit!";
char[] arr1 = str1.ToCharArray(3, 2);
char[] arr2 = str2.ToCharArray(2, 2);
Console.WriteLine("String1 = " + str1);
Console.WriteLine("String1 ToLower = " + str1.ToLower());
Console.WriteLine("String1 Substring từ index 4 = " + str1.Substring(4, 4));
Console.Write("Mảng ký tự String1 = ");
for (int i = 0; i < arr1.Length; i++)
Console.Write(" " + arr1[i]);
Console.WriteLine("\n\nString2 = " + str2);
Console.WriteLine("String2 ToLower = " + str2.ToLower());
Console.WriteLine("String2 Substring từ index 0, độ dài 5 = " + str2.Substring(0, 5));
Console.Write("Mảng ký tự String2 = ");
for (int i = 0; i < arr2.Length; i++)
Console.Write(" " + arr2[i]);
}
}
Kết quả
String1 = WELCOME! String1 ToLower = welcome! String1 Substring từ index 4 = OME! Mảng ký tự String1 = C O String2 = Thisisit! String2 ToLower = thisisit! String2 Substring từ index 0, độ dài 5 = Thisi Mảng ký tự String2 = i s
Ví dụ 2 - ToLower với CultureInfo
using System;
using System.Globalization;
public class Demo
{
public static void Main(string[] args)
{
string str1 = "ABCD!";
string str2 = "@#$PQRSTUV!";
Console.WriteLine("String1 = " + str1);
Console.WriteLine("String1 ToLower (en-US) = " + str1.ToLower(new CultureInfo("en-US", false)));
Console.WriteLine("String1 Substring từ index 2, độ dài 2 = " + str1.Substring(2, 2));
Console.WriteLine("\nString2 = " + str2);
Console.WriteLine("String2 ToLower (en-US) = " + str2.ToLower(new CultureInfo("en-US", false)));
Console.WriteLine("String2 Substring từ index 0, độ dài 5 = " + str2.Substring(0, 5));
}
}
Kết quả
String1 = ABCD! String1 ToLower (en-US) = abcd! String1 Substring từ index 2, độ dài 2 = CD String2 = @#$PQRSTUV! String2 ToLower (en-US) = @#$pqrstuv! String2 Substring từ index 0, độ dài 5 = @#$PQ
Lưu ý quan trọng
- Chuỗi trong .NET là immutable,
ToLower()trả về chuỗi mới. - Mặc định dùng
CultureInfo.CurrentCulture. Với dữ liệu nội bộ (file, protocol, DB), dùngCultureInfo.InvariantCulturehoặcToLowerInvariant(). - Ví dụ văn hóa đặc biệt: tiếng Thổ Nhĩ Kỳ (tr-TR) chữ 'I' lớn thành 'ı' (dotless i), không phải 'i'.
ToLowerInvariant()tương đươngToLower(CultureInfo.InvariantCulture), nhanh hơn một chút.- Để so sánh chuỗi không phân biệt chữ hoa/thường:
str1.Equals(str2, StringComparison.OrdinalIgnoreCase).