c#中字符串分割

有时我们需将一个字符串用另一个字符串来分割成字符串字组。而C#中string.split只提供用char来分割。怎么办?

我用了下面一个方法,可能笨了点!:)

  /// <summary>
  /// 将字符串分割成数组
  /// </summary>
  /// <param name="strSource"></param>
  /// <param name="strSplit"></param>
  /// <returns></returns>
  public string[] StringSplit(string strSource,string strSplit)
  {
   string[] strtmp = new string[1];
   int index = strSource.IndexOf(strSplit,0);
   if(index<0)
   {
    strtmp[0] = strSource;
    return strtmp;
   }
   else
   {
    strtmp[0] = strSource.Substring(0,index);
    return StringSplit(strSource.Substring(index+strSplit.Length),strSplit,strtmp);
   }
  }

  /// <summary>
  /// 采用递归将字符串分割成数组
  /// </summary>
  /// <param name="strSource"></param>
  /// <param name="strSplit"></param>
  /// <param name="attachArray"></param>
  /// <returns></returns>
  private string[] StringSplit(string strSource,string strSplit,string[] attachArray)
  {
   string[] strtmp = new string[attachArray.Length+1];
   attachArray.CopyTo(strtmp,0);

   int index = strSource.IndexOf(strSplit,0);
   if(index<0)
   {
    strtmp[attachArray.Length] = strSource;
    return strtmp;
   }
   else
   {
    strtmp[attachArray.Length] = strSource.Substring(0,index);
    return StringSplit(strSource.Substring(index+strSplit.Length),strSplit,strtmp);
   }   
  }

要将一个字符串分割并存储到结构体(struct),你可以使用 `Split` 方法将字符串拆分为多个子字符串,然后将这些子字符串转换为结构体的字段。以下是一个示例代码: ```csharp using System; struct Person { public string Name; public int Age; } class Program { static void Main() { string input = "John,25"; // 使用逗号分割字符串 string[] parts = input.Split(','); // 创建一个新的结构体实例,并将拆分的子字符串转换为结构体字段 Person person = new Person(); person.Name = parts[0]; person.Age = int.Parse(parts[1]); Console.WriteLine("Name: " + person.Name); Console.WriteLine("Age: " + person.Age); } } ``` 在这个示例,我们定义了一个名为`Person`的结构体,其包含了两个字段:`Name`(姓名)和`Age`(年龄)。然后,我们定义了一个字符串变量`input`,包含了一个姓名和年龄以逗号分隔的字符串。 我们使用`Split`方法将输入字符串拆分两个子字符串,存储在字符串数组`parts`。然后,我们创建了一个新的`Person`结构体实例,并将拆分的子字符串转换为结构体的字段。 最后,我们打印出结构体的字段值。 执行以上代码,你将会得到输出结果: ``` Name: John Age: 25 ``` 这个示例演示了如何将一个字符串分割并存储到结构体。 希望这个示例对你有所帮助!如果你还有其他关于C#字符串分割到结构体的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值