RegEx拆分到List <string>

时间:2018-02-17 18:18:22

标签: regex

RegEx对我来说有点混乱,我已经在一条线上工作了3.5个小时。

我有一个字符串:

&#34;第1层第2层第3层第4层&#34;

我想把它拆分成一个List而无法让它工作。 我尝试了这个,它很接近,但仍然不是我想做的事情:

List<string> lineWords = Regex
    .Matches(line, @"[Layier_]*\s*\s*[1-9]")
    .OfType<Match>().ToArray()
    .Select(match => match.Value)
    .List();

我在哪里出错?

谢谢。

1 个答案:

答案 0 :(得分:0)

你没有明确地写它,但我想,你正在使用C#。

您的代码只需要进行少量更正:

  • 我改变了正则表达式(比较)。
  • ToArray()不需要。
  • 而不是List()使用ToList()

所以下面给出的代码可以工作。

List<string> lineWords = Regex.Matches(line, @"[Layier_]+\s*[1-9]")
  .Cast<Match>()
  .Select(match => match.Value)
  .ToList();