将数组的3个字符包转换为整数C#

时间:2017-03-24 19:07:33

标签: c# arrays string char integer

所以,我有这个包含一堆数字的数组。我想总是从这些字符中取出3个并用它们制作一个整数。我还没有发现任何相关内容。 这是一个例子:

string number = "123456xyz";

字符串是我所拥有的,这些整数是我想要的

int goal1 = 123;
int goal2 = 456;
int goaln = xyz;

它应该遍历所有字符并始终将它们分成三个一组。我认为foreach()会帮助我,但我不太确定该怎么做。

2 个答案:

答案 0 :(得分:1)

这样的事情:

var goals = new List<int>();
for (int i = 0; i + 2 < number.Length; i += 3)
{
  goals.Add(int.Parse(number.Substring(i,3)));
}

这没有错误检查,但它显示了一般大纲。 Foreach不是一个很好的选择,因为当你想要一次看三个角色时,它会一次一个地通过角色。

答案 1 :(得分:0)

var numbers = (from Match m in Regex.Matches(number, @"\d{3}")
    select m.Value).ToList();

var goal1 = Convert.ToInt32(numbers[0]);
var goal2 = Convert.ToInt32(numbers[1]);
...