需求是这样的:不允许在一个字符串中同时出现"博", "客", "园", "团", "队"这5个文字。
如果不用LINQ,代码写起来会很啰嗦:
var teststr = "博2客0园1团4队."; if (teststr.IndexOf("博") >= 0 && teststr.IndexOf("客") >= 0 && teststr.IndexOf("园") >= 0 && teststr.IndexOf("团") >= 0 && teststr.IndexOf("队") >= 0) { //... }
而用LINQ,代码立马变得简洁:
var teststr = "博2客0园1团4队."; var cmt = new string[] { "博", "客", "园", "团", "队" }; if (cmt.All(teststr.Contains)) { //... }
LINQ让写代码变得更享受,也更具表达力。
【参考】
Using C# to check if string contains a string in string array