我有逗号分隔的数字串,如何检查该字符串中是否包含另一个字符串。
例如:
如果我有一个字符串:
67,782,452,67632,9,155,323
如何使用linq检查155
是否在上一个字符串中?
答案 0 :(得分:4)
我假设您要检查字符串中的某个项是否是您给定的字符串。我会先用分隔符,
拆分字符串,然后使用Contains
或Any
:
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.Contains
或Any
(您可以在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");