RegEx对我来说有点混乱,我已经在一条线上工作了3.5个小时。
我有一个字符串:
"第1层第2层第3层第4层"
我想把它拆分成一个List而无法让它工作。 我尝试了这个,它很接近,但仍然不是我想做的事情:
List<string> lineWords = Regex
.Matches(line, @"[Layier_]*\s*\s*[1-9]")
.OfType<Match>().ToArray()
.Select(match => match.Value)
.List();
我在哪里出错?
谢谢。
答案 0 :(得分:0)
你没有明确地写它,但我想,你正在使用C#。
您的代码只需要进行少量更正:
ToArray()
不需要。List()
使用ToList()
。所以下面给出的代码可以工作。
List<string> lineWords = Regex.Matches(line, @"[Layier_]+\s*[1-9]")
.Cast<Match>()
.Select(match => match.Value)
.ToList();