SMLNJ将字符串列表解析为具有多个数据类型的元组列表

问题描述:

我有一个我想要解析为元组列表的字符串列表。SMLNJ将字符串列表解析为具有多个数据类型的元组列表

更具体:

val strlist = ["1, 2, 3, 'hello', 4, 5, false, 6, [1, 2, 3], [1, 2]", 
       "6, 1, 3, 'world', 4, 5, true, 4, [1, 2], [4, 7, 5]", 
       . . .] : string list 

val tuplist = [(1, 2, 3, "hello", 4, 5, false, 6, [1, 2, 3], [1, 2]), 
       (6, 1, 3, "world", 4, 5, true, 4, [1, 2], [4, 7, 5]), 
       . . .] : (int * int * int * string * int * int * bool * int * int list * int list) list 

每个列表元素具有相同的格式。

+1

...你到目前为止尝试过什么?告诉我们你已经付出了一些努力,并且我们会帮助你解决你遇到的**特定**问题。也就是说,我怀疑这是可能的,因为这样的函数会要求它的类型在运行时改变*(除非你知道所有的字符串都有这种格式,在这种情况下在问题中提到它)。 – hnefatl

在这里找到 https://开头*.com/questions/14750444/how-can-i-parse-string-to-int-int-tuple-in-sml

但我只想用String.fields获取字符串,用^粘合列表字符串,并转换格式。我只需要一个额外的函数将列表字符串转换为子列表。有点乏味,但并不困难。