代码之家  ›  专栏  ›  技术社区  ›  CookieOfFortune

在C中获取字符串中的第一个单词和其余单词的最佳方法#

  •  10
  • CookieOfFortune  · 技术社区  · 14 年前

    在C中#

    var parameters =
        from line in parameterTextBox.Lines
        select new {name = line.Split(' ').First(), value = line.Split(' ').Skip(1)};
    

    有没有一种方法可以做到这一点,而不必分裂两次?

    4 回复  |  直到 14 年前
        1
  •  30
  •   Matt Greer    14 年前

    let 条款

    var parameters =
        from line in parameterTextBox.Lines
        let split = line.Split(' ')
        select new {name = split.First(), value = split.Skip(1)};
    
        2
  •  6
  •   SolutionYogi Eric Lippert    14 年前

    当然。

    var parameters = from line in parameterTextBox.Lines
                     let words = line.Split(' ')
                     select new { name = words.First(), words.skip(1) };
    
        3
  •  4
  •   rerun    14 年前
    string Str= "one all of the rest";
    Match m = Regex.match(Str,"(\w*) (\w.*)");
    string wordone = m.Groups[1];
    string wordtwo = m.Groups[2];
    
        4
  •  0
  •   Łukasz Rogalski    9 年前

    private Dictionary<string, string> getParameters(string[] lines)
    {
        Dictionary<string, string> results = new Dictionary<string, string>();
        foreach (string line in lines)
        {
            string pName = line.Substring(0, line.IndexOf(' '));
            string pVal = line.Substring(line.IndexOf(' ') + 1);
            results.Add(pName, pVal);
        }
        return results;
    }