c# – 计数以linq开头
发布时间:2020-12-15 23:43:50 所属栏目:百科 来源:网络整理
导读:所以我有一个关于如何计算 linq中的字符串开头的问题.让我解释一些测试用例 测试案例#1 var target="test";var source="test2"; 输出应为4 测试案例#2 var target="te";var source="test2"; 输出应为2 测试案例#3: var target="tet";var source="test2"; 输
所以我有一个关于如何计算
linq中的字符串开头的问题.让我解释一些测试用例
测试案例#1 var target="test"; var source="test2"; 输出应为4 测试案例#2 var target="te"; var source="test2"; 输出应为2 测试案例#3: var target="tet"; var source="test2"; 输出应为0.因为源不以target开头 所以我想出了这个功能: private int CountStartsWith(string source,string target) { if (!source.StartsWith(target)) return 0; return source.ToCharArray() .Zip(target.ToCharArray(),(s1,s2) => (s1 == s2)) .TakeWhile(match => match) .Count(); } 它适用于我的测试用例.但我的问题是,这可以通过更简单的方式完成吗? 解决方法if (!source.StartsWith(target)) return 0; return target.Length; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |