int 我想知道是否有办法为这样的列表做到这一点: "[4;2;3]" |> list 当尝试对列表执行此操作-6ren">
gpt4 book ai didi

F# 将字符串传递给列表

转载 作者:行者123 更新时间:2023-12-05 01:27:51 24 4
gpt4 key购买 nike

在 F# 中,您可以通过 |> 运算符将字符串传递给 int,如下所示:

"54" |> int

我想知道是否有办法为这样的列表做到这一点:

"[4;2;3]" |> list

当尝试对列表执行此操作时,它会出错,即未定义值或构造函数。

也许这根本不可能?

最佳答案

int 是一个可以将字符串(和其他东西)转换为 int 的函数。

没有名为list 的内置函数。要制作列表,您可以使用列表文字语法:[4;2;3]

如果您需要将类似 "[4;2;3]" 的字符串解析为 int list,那么您只能靠自己了。你需要编写代码来做到这一点。例如:

let parseIntList (str:string) =
let trimmed = str.Trim()
if not (trimmed.StartsWith "[" && trimmed.EndsWith "]") then failwith "Not a list"
trimmed.[1 .. trimmed.Length - 2].Split ';'
|> Array.map int
|> Array.toList

此函数适用于您的示例,但对于其他有效输入可能会失败。

关于F# 将字符串传递给列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41826544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com