我想先输入一个字符串,里面只能有数字和分隔符(如空格,逗号之类的),然后提取里面的数字放入一个int类型的数组中,再输出数组,请问这个怎么实现最好呢?请指教

解决方案 »

  1.   

    string [] split = textBox1.Text.Trim().Split(' ', ',');
      

  2.   

    对于输入时的控制和校验就不说了。
    就说如何处理你输入的字符串,把他们放到int数组中:
    char[] chr = new char[]{","," "};//或者加一些其他的分隔符
    string str = textbox1.Text.Trim();
    string[] s_arra = str.Split(chr);
    int[] i_arra = (int[])s_arra;
      

  3.   

    char[] chr = new char[]{","," "};//或者加一些其他的分隔符
    ->
    char[] chr = new char[]{',',' '};//或者加一些其他的分隔符
      

  4.   

    // 分析输入字符串
    string [] split = textBox1.Text.Trim().Split(' ', ',');// 生成数组
    int [] ai = new int [split.Length];
    for (int i = 0; i < split.Length; i++)
    {
      ai[i] = int.Parse(split[i]);
    }// 输出数组
    for (int i = 0; i < ai.Length; i++)
    {
      System.Console.WriteLine(ai[i]);
    }
      

  5.   

    假如我要实现和C一样的键盘输入,比如scanf("%d,%d,%d",&a,&b,&c)或者scanf("%d %d %d",&a,&b,&c)呢?
      

  6.   

    正则实现
    string[] SplitArray = null;
    try {
    SplitArray = Regex.Split(SubjectString, "[,\\s;-]");
    } catch (ArgumentException ex) {
    // Syntax error in the regular expression
    }有什么分隔符就往[,\\s;-]写什么\\s表示空格