ฉันมีรายการtestList
ที่ประกอบด้วยสตริงจำนวนหนึ่ง ฉันต้องการเพิ่มสตริงใหม่ลงในสตริงtestList
เดียวหากไม่มีอยู่ในรายการ ดังนั้นฉันต้องทำการค้นหาตามตัวพิมพ์เล็กและรายการให้มีประสิทธิภาพ ฉันใช้ไม่ได้Contains
เพราะนั่นไม่ได้คำนึงถึงตัวเรือน ฉันไม่ต้องการใช้ToUpper/ToLower
ด้วยเหตุผลด้านประสิทธิภาพ ฉันเจอวิธีนี้ซึ่งใช้งานได้:
if(testList.FindAll(x => x.IndexOf(keyword,
StringComparison.OrdinalIgnoreCase) >= 0).Count > 0)
Console.WriteLine("Found in list");
ใช้งานได้ แต่มันก็ตรงกับคำบางส่วน หากรายการมี "แพะ" ฉันไม่สามารถเพิ่ม "ข้าวโอ๊ต" เพราะอ้างว่า "ข้าวโอ๊ต" มีอยู่แล้วในรายการ มีวิธีในการค้นหารายการอย่างมีประสิทธิภาพในกรณีที่ไม่รู้สึกตัวพิมพ์เล็กหรือใหญ่ที่คำต้องตรงทั้งหมด? ขอบคุณ