gpt4 book ai didi

elixir - 惯用的 Elixir 获取嵌套列表项?

转载 作者:行者123 更新时间:2023-12-02 17:27:09 25 4
gpt4 key购买 nike

我有这个嵌套列表项,

[["Bearer"], ["xxxyyyxxxx123"]] #  parsed from "Bearer xxxyyyxxxx123"

我只需要获取“xxxyyyxxxx123”值即可。

我现在正在这样做,但我认为这不是惯用的。

token = Regex.scan(~r/^Bearer|\w+/, header_content)
|> List.flatten
|> List.last

最佳答案

保持相同 Regex.scan/2 调用的惯用方法是使用模式匹配。

iex(1)> header_content = "Bearer xxxyyyxxxx123"
"Bearer xxxyyyxxxx123"
iex(2)> [_, [token]] = Regex.scan(~r/^Bearer|\w+/, header_content)
[["Bearer"], ["xxxyyyxxxx123"]]
iex(3)> token
"xxxyyyxxxx123"

除非我遗漏了什么,否则匹配此字符串的更惯用的方式(并且可能更有效)(它的功能不等同于您以前的正则表达式,但这可能对您来说是正确的)将使用不同的正则表达式和模式匹配:

iex(4)> [_, token] = Regex.run(~r/Bearer\s*(.*)/, header_content)
["Bearer xxxyyyxxxx123", "xxxyyyxxxx123"]
iex(5)> token
"xxxyyyxxxx123"

关于elixir - 惯用的 Elixir 获取嵌套列表项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37740061/

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