我这里有这个功能:
let ProcessFile (allLines: string list) =
let list = new List<List<string>>()
let rec SplitFile (input: string list) =
if input.Length <> 0 then
list.Add(new List<string>(input.TakeWhile(fun x -> x <> "")))
let nextGroup = input.SkipWhile(fun x -> x <> "").SkipWhile(fun x -> x = "")
SplitFile (Seq.toList nextGroup)
SplitFile allLines |> ignore
list
它以字符串列表的形式给出文件的内容,并将由空行分隔的每个组作为单独的列表,给我一个列表列表。
我的问题是,有没有更好的方法来做这个,它给我一个类似于字符串列表列表的东西,而不是我不得不使用 new List< List< string>>?因为这对我来说似乎不是特别整洁。