有没有办法在不查看索引的情况下将字符串分成两对?例如,TVBMCVTVFGTVTB将被分成如下字符串列表:
[电视,BM,CV,电视,FG,电视,TB]
也许我应该说问题是,当使用字符串将它们分成组时,它们是一个类似于string.join或string.split的函数.
哦,来吧,只需使用这样的索引:
public static class StringExtensions {
public static IEnumerable<string> TakeEvery(this string s, int count) {
int index = 0;
while(index < s.Length) {
if(s.Length - index >= count) {
yield return s.Substring(index, count);
}
else {
yield return s.Substring(index, s.Length - index);
}
index += count;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我没有添加任何保护条款.
用法:
var items = "TVBMCVTVFGTVTB".TakeEvery(2);
foreach(var item in items) {
Console.WriteLine(item);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3609 次 |
| 最近记录: |