簡體   English   中英

如何不區分大小寫地使用indexOf()?

[英]How do I use indexOf() case insensitively?

我有字符串列表:

List<string> fnColArr = new List<string>();
fnColArr={"Punctuation,period,Space,and,yes"};

我正在使用ListIndexOf屬性在當前列表中查找字符串:

int arrayval = fnColArr.IndexOf("punctuation");

現在,由於列表中不存在該字符串,所以arrayval值為-1。 但是這里唯一的區別是小寫字母。

我還想找到字符串punctuation ,無論大小寫如何。

您可以使用重載方法

IndexOf("punctuation", StringComparison.OrdinalIgnoreCase);

例如。

List<string> fnColArr = new List<string>() 
{ "Punctuation", "period", "Space", "and", "yes" };

            foreach (string item in fnColArr)
            {
                if (item.IndexOf("puNctuation", StringComparison.OrdinalIgnoreCase) >= 0)
                {
                    Console.WriteLine("match");

                }
            }

另外,您也可以使用Lambda函數fnColArr.FindIndex(x => x.ToLower().Equals("punctuation"));

您必須這樣做。

List<string> fnColArr = new List<string> {"Punctuation","period","Space","and","yes"};
int arrayval = fnColArr.IndexOf("punctuation",StringComparer.InvariantCultureIgnoreCase);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM