Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Lấy 10 ký tự đầu của chuỗi trong C#

Lấy substring đầu chuỗi: str.Substring(0, length). Cần kiểm tra độ dài chuỗi trước.

Ví dụ minh họa

using System;

class Program
{
    static void Main()
    {
        string str = "Cricket is a religion in India!";
        
        // Cách 1: Substring (cần check length)
        int len = Math.Min(10, str.Length);
        string first10 = str.Substring(0, len);
        Console.WriteLine($"Substring: '{first10}'");
        
        // Cách 2: LINQ Take (an toàn, không cần check)
        string first10Linq = new string(str.Take(10).ToArray());
        Console.WriteLine($"LINQ Take: '{first10Linq}'");
        
        // Cách 3: Span (C# 7.2+, hiệu năng cao, không allocate)
        ReadOnlySpan span = str.AsSpan(0, Math.Min(10, str.Length));
        Console.WriteLine($"Span: '{span.ToString()}'");
        
        // Test chuỗi ngắn
        string shortStr = "Hi";
        Console.WriteLine($"\nChuỗi ngắn '{shortStr}':");
        Console.WriteLine($"Substring: '{shortStr.Substring(0, Math.Min(10, shortStr.Length))}'");
    }
}

Kết quả đầu ra

Substring: 'Cricket is'
LINQ Take: 'Cricket is'
Span: 'Cricket is'

Chuỗi ngắn 'Hi':
Substring: 'Hi'

Lưu ý: Substring(0, 10) ném exception nếu chuỗi < 10 ký tự. Luôn dùng Math.Min(10, str.Length) hoặc str.Length >= 10 ? str.Substring(0,10) : str.