4

我有一个由 16 位数字(十六进制数)组成的字符串,它将作为一个大数字输入到文本框中。例如,“1111222233334444”。

我需要

  • 读入这个数字,
  • 将其分为四组,如 1111 2222 3333 4444。
  • 将组存储到四个变量或数组中

我找到了一些方法来做到这一点,但他们只是写信给控制台。因此,在用户输入该数据后,我需要有类似的东西:

    string first = 1111; 
    string second = 2222; 
    string third = 3333; 
    string fourth = 4444.

任何帮助表示赞赏!

4

3 回答 3

6

您可以使用子字符串来做到这一点。

string strNumber = "1111222233334444";

string []strArr = new string[4];

for(int i=0; i < 4; i++)
{
   strArr[i] = strNumber.Substring(i*4, 4);
}
于 2012-10-31T17:11:17.223 回答
3

这里是:

string initial_string = TextBox1.Text;  //read from textbox 

string [] number = new string[4];

number[0] = initial_string.Substring(0,4);
number[1] = initial_string.Substring(4,4);
number[2] = initial_string.Substring(8,4);
number[3] = initial_string.Substring(12,4);
于 2012-10-31T17:19:13.990 回答
2

您可以使用 Regex 在一行中执行此操作:

var res = Regex.Split(str, "(?<=\\G\\d{4})");

注意:这在 Microsoft .NET 下运行良好,但不适用于 Mono 的 Regex 实现。

于 2012-10-31T17:16:09.940 回答