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

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

Kết hợp Select() với Substring() để cắt lấy N ký tự đầu của mỗi chuỗi trong collection.

Ví dụ minh họa

using System;
using System.Linq;
using System.Collections.Generic;

class Demo
{
    static void Main()
    {
        List<object> list = new List<object> { "keyboard", "mouse", "joystick", "monitor" };

        IEnumerable<string> res = list.AsQueryable()
            .Cast<string>()
            .Select(str => str.Substring(0, 3));

        foreach (string str in res)
            Console.WriteLine(str);
    }
}

Kết quả đầu ra

key
mou
joy
mon

Lưu ý:

  • Cast<string>() cần vì List<object> không thể gọi Substring trực tiếp
  • Cần kiểm tra str.Length >= 3 để tránh ngoại lệ
  • Dùng str[..3] (C# 8+ range operator) thay cho Substring(0,3)