我怎样才能像“;12-15”;分成两个数字

本文关键字:数字 两个 12-15 | 更新日期: 2023-09-27 18:08:31

我的前端应用程序发送的字符串如下所示:

"12-15" 

到后端C#应用程序。

有人能给我一些关于如何将这两个数字提取成两个变量的建议吗。请注意,格式总是相同的,只有两个数字和一个连字符。

我怎样才能像“;12-15”;分成两个数字

 string stringToSplit = "12-15";
 string[] splitStringArray;
 splitStringArray = stringToSplit.Split('-');

splitStringArray[0]将是12

splitStringArray[1]将是15

将字符串拆分为多个部分:

string s = "12-15";
string[] num = s.Split('-');
int part1 = Convert.ToInt32(num[0]);
int part2 = Convert.ToInt32(num[1]);
int[] numbers = "12-15".Split('-')
        .Select(x => {
            int n;
            int.TryParse(x, out n);
            return n;
        })
        .ToArray();

我们在字符串实例上调用Split。该程序在单个字符上进行拆分

string s ="12-15";
string[] words = s.Split('-');
foreach (string word in words)
{
    int convertedvalue = Convert.ToInt32(word ); 
    Console.WriteLine(word);
}
string[] ss= s.Split('-');
int x = Convert.ToInt32(ss[0]);
int y = Convert.ToInt32(ss[1]);

更多信息

您可以使用下面的代码进行拆分,它会为每个值返回字符串,然后您可以将其类型转换为您想要的任何类型。。。

string myString = "12-15-18-20-25-60";
string[] splittedStrings = myString.Split('-');
foreach (var splittedString in splittedStrings)
{
    Console.WriteLine(splittedString + "'n");
}
Console.ReadLine();

这是没有错误代码的正确版本

string textReceived = "12-15";
string[] numbers = textReceived.Split('-');
List<int> numberCollection = new List<int>();
foreach (var item in numbers)
{
    numberCollection.Add(Convert.ToInt32(item));
}
String numberString = "12-15" ;
string[] arr = numberString.Split("-");

现在你将得到一个字符串数组,你可以使用解析来获得单独的数字

int firstNumber = Convert.ToInt32(arr[0]);

与解析相关的有用答案:

https://stackoverflow.com/a/199484/5395773

您可以使用Array.ConvertAll方法将该字符串显式转换为整数数组,并使用其索引访问数字,您可以在此处运行以下示例。

using System;
namespace Rextester
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var number = "12-15";
            var numbers = Array.ConvertAll(number.Split('-'), int.Parse);
            Console.WriteLine(numbers[0]);
            Console.WriteLine(numbers[1]);
        }
    }
}

或者,您可以使用int.Parse方法显式转换数字字符串,int关键字是System.Int32的别名,它优先于完整的系统类型名称System.Int32,您可以在这里运行以下示例。

using System;
namespace Rextester
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var number = "12-15";
            var numbers = number.Split('-');
            var one = int.Parse(numbers[0]);
            var two = int.Parse(numbers[1]);
            Console.WriteLine(one);
            Console.WriteLine(two);
        }
    }
}

附加阅读:请查看int.ParseConvert.Int32int.TryParse,了解有关将输入解析为整数的更多信息

string str = null;
string[] strArr = null;
int count = 0;
str = "12-15";
char[] splitchar = { '-' };
strArr = str.Split(splitchar);
for (count = 0; count <= strArr.Length - 1; count++)
{
    MessageBox.Show(strArr[count]);
}