我们如何匹配字符串包含C#w / o中使用循环的任何数组值?

时间:2015-09-24 06:35:20

标签: c# asp.net arrays string contains

我们如何匹配字符串包含C#w / o中使用循环的任何数组值?

例如:

string [] abc = [val1,val2,val3]。 string xyz =" demo string,用于检查它是否包含abc数组中的任何值,即val2&#34 ;;

我想使用循环

检查字符串xyz中是否存在数组abc的任何值

4 个答案:

答案 0 :(得分:2)

一个方法可能是linq

string[] abc = { "abc", "def", "xyz" }; 
string xyz = "demo string to check if it contains any value in abc array that is val2";
bool result = abc.Any(xyz.Contains); //true

但内部linq并包含使用循环 - 所以我认为没有循环就没有可能的解决方案。

答案 1 :(得分:1)

要从集合中搜索/读取数组(读取数组),您需要使用循环/迭代,因为涉及集合。

即使你不编写循环并编写一些语法糖代码,在后台也会使用LOOP / ITERATION。

正如其他人回答的那样,您可以使用LINQ或其他东西,但它会迭代您的收藏。

答案 2 :(得分:0)

已经有一个包含功能。你可以像这样使用它

bool result=abc.Contains("walue to be checked");

替代方法是使用LINQ

但这两种方法都使用内部循环。

答案 3 :(得分:0)

你可以检查:

string[] arr = { "abc", "bcd", "cde" };

if (arr.Contains("abc"))
{
    Console.WriteLine("Found");
}
else
{
    Console.WriteLine("Not Found");
}

为了更快捷地使用Array.IndexOf Method

int pos = Array.IndexOf(arr, "abc");
if (pos > -1)
{
    // the array contains the string and the pos variable
    // will have its position in the array
}