簡體   English   中英

如何檢查字符串是否包含列表值以及是否單獨包含列表值和其他值

[英]How to check if string contains list value and separately if contains but with other value

我試圖弄清楚如何定義字符串是否包含/不包含列表值以及是否包含但包含其他值。

如果我輸入了字符串:

string inputString = "it was one";

我想找到條件的特定值:

var numbList = new List<string> {"zero", "one", "two"}; 

if (!numbList.Any(inputString.Contains)) 
{
     Console.WriteLine("string does not contains list value");                                           
}
else
{
     Console.WriteLine("string contains list value"); 
}

但是,如果我還想了解第三個條件,即字符串是否包含值但還包含其他單詞,則不確定什么是正確的方法。

對於字符串: inputString = "it was one"; 理想的結果應該是:

 Console.WriteLine("string contains list value and other words"); 

對於字符串: inputString = "one";

 Console.WriteLine("string contains list value"); 

對於: inputString = "it was";

 Console.WriteLine( "string does not contains list value"); 

我認為您正在尋找這樣的東西:

if (inputString.Split(new string[]{" "},StringSplitOptions.RemoveEmptyEntries).All(x => numbList.Contains(x)))
{
    opDisplay="string contains list value";
}
else if (numbList.Any(x => inputString.Contains(x)))
{
    opDisplay = "string contains list value and other words";
}
else
{
    opDisplay = "string does not contains list value";
}

你可以在這里嘗試一個例子

為什么不使用下面的代碼? 我想不出一種失敗的條件。

            string inputString = "it was one ";
            var numbList = new List<string> { "zero", "one", "two" };
            if (numbList.Any(x => inputString.Contains(x)))
            {
                if (numbList.Any(x => inputString.Trim().StartsWith(x) && inputString.Trim().EndsWith(x)))
                {
                    Console.WriteLine("string contains list value");
                }
                else
                {
                    Console.WriteLine("string contains list value and other words");
                }
            }
            else
            {
                Console.WriteLine("string does not contains list value");
            }

這里找到小提琴

暫無
暫無

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

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