如何检查字符串包含另一个字符串

时间:2014-03-10 10:49:16

标签: c# asp.net string linq

我有逗号分隔的数字串,如何检查该字符串中是否包含另一个字符串。

例如:

如果我有一个字符串:

67,782,452,67632,9,155,323

如何使用linq检查155是否在上一个字符串中?

4 个答案:

答案 0 :(得分:4)

我假设您要检查字符串中的某个项是否是您给定的字符串。我会先用分隔符,拆分字符串,然后使用ContainsAny

string[] items = "67,782,452,67632,9,155,323".Split(',');
bool contains = items.Contains("155");
contains = items.Any(i => i == "155");

Contains的问题 - 检查字符串是“1550”还包含“155”。

答案 1 :(得分:3)

例如使用String.ContainsAny(您可以在linq查询中使用string.Contains)

string a = "67,782,452,67632,9,155,323";
var splitted = a.Split(',');
if(splitted.Any(x=> x == "155"))
{
 ...
}

if(splitted.Contains("155"))
{
 ...
}

或丑陋的单行

var contains = a.Split(',').Any(x=>x=="155");

答案 2 :(得分:2)

拆分字符串,然后检查生成的数组:

string input = "67,782,452,67632,9,155,323";
string[] values = input.Split(',');
bool contained = values.Contains("155");

答案 3 :(得分:2)

使用Linq:

var str = "67,782,452,67632,9,155,323";
var arr = str.Split(',');

var isInString = arr.Any(x => x == "155");