从字符串中拆分 2 个日期的问题

Issue with splitting 2 dates from a string

我正在尝试从从表单中获取的字符串中提取两个日期。该字符串看起来有点像这样:

2013 年 3 月 18 日 - 2013 年 3 月 23 日

我已尝试将这些值拆分出来,但在对“-”进行拆分时遇到问题

到目前为止,这是我的代码:

    string daterange = Request.Form["daterange"];
    string [] arr = daterange.Split(new Char[] {' '});
    string bookedfrom = arr[0];
    string bookedto = arr[1];

但是,这给了我以下两个值:

值 1 = 2013 年 3 月 18 日 值 2 = -

如有任何建议,我们将不胜感激。

有一个overload of String.Split接受字符串数组而不是字符数组,但它需要第二个参数。尝试

string [] arr = daterange.Split(new string[] {" - "},StringSplitOptions.None);

相反。

作为替代方案(因为你只有 两个 件)你可以使用 Substring 而不是 Split:

  String daterange = Request.Form["daterange"];

  String bookedfrom = daterange.Substring(0, daterange.IndexOf(" - "));
  String bookedto = daterange.Substring(daterange.IndexOf(" - ") + " - ".Length);