[英]c# split string value by numeric
字符串值
String value = "11100110100";
我想拆分它,如下圖所示,
111,00,11,0,1,00
我嘗試通過基於數字分割,如下所示:
List<string> result1= value.Split('0').ToList<string>();
List<string> result2= value.Split('1').ToList<string>();
它不起作用,如何通過拆分1和0獲得所需的輸出(如下所示)?
111
00
11
0
1
00
謝謝。
您可以在每個更改之間放置一個字符,從0到1,從1到0,然后拆分:
string[] result = value.Replace("10", "1,0").Replace("01", "0,1").Split(',');
這是我的擴展方法,沒有替換 - 只解析。
public static IEnumerable<string> Group(this string s)
{
if (s == null) throw new ArgumentNullException("s");
var index = 0;
while (index < s.Length)
{
var currentGroupChar = s[index];
int groupSize = 1;
while (index + 1 < s.Length && currentGroupChar == s[index + 1])
{
groupSize += 1;
index += 1;
}
index += 1;
yield return new string(currentGroupChar, groupSize);
}
}
注意:它適用於每個char分組 (不僅僅是0和1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.