2016-11-29 61 views
-4

我有一排这样的:aabbbabaabb 我需要的代码打印出来:2A 3B 1A 1B 2A 2B数出现在一个字符串排

如何做,在C#中

编辑 我需要将这些数值计算为这样:b中有3个b中的2个,然后是1的b中的1,然后是2的b中的2。 我不需要统计a和b的总数。

我感到值读取矩阵,价值对角线: 如果我有矩阵是这样的:

a a b a 
a b a b 
a b b a 

我设法从右下角读矩阵 - 并把值行:

1row: a 
2row: bb 
3row: baa 
4row: bba 
5row: aa 
6row: a 

但我需要这个看起来像这样:

1row: 1a 
2row: 2b 
3row: 1b2a 
4row: 2b1a 
5row: 2a 
6row: 1a 
+4

C#和php?你有什么尝试? –

+0

你有什么要求?就像,创造'2a 3b 1a 2b 2a 2b'的条件是什么? – Nytrix

+0

它假设计算这样的事件:有一个2,然后3然后1a然后2,然后b ... – user2974944

回答

1

这是RegEx方法

string input = "aabbbabaabb"; 
string result = string.Concat(Regex.Matches(input, @"(.)\1*", RegexOptions.None) 
         .Cast<Match>() 
         .Select(x => string.Concat(x.Length, x.Value.First()))); 
+0

是的,无论如何tnx。 – user2974944

相关问题