elixir - 有更好的方法来获取前 n 个字节和字符串的其余部分吗?目前使用binary_part和String.trim_leading

标签 elixir

给定一个字符串 str = "üabc123"size = 5。我想获取前 5 个字节("üabc"),以及字符串的其余部分("123")。

目前我正在做:

str = "üabc123"
size = 5
a = binary_part(str, 0, size)      # "üabc"
b = String.trim_leading(str, a)    # "123"

似乎有一种更干净的方法可以做到这一点。还有别的办法吗?

最佳答案

您可以使用二进制模式匹配

<< a::binary-size(5), b::binary >> = "üabc123"
a == "üabc"
b == "123"

关于elixir - 有更好的方法来获取前 n 个字节和字符串的其余部分吗?目前使用binary_part和String.trim_leading,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53136729/

相关文章:

encryption - 如何生成与 JWT 一起使用的 HS512 key

elixir - 如何将 erlang 包添加到 elixir 应用程序中

elixir - 如何漂亮地打印conn内容?

erlang - 在 Elixir/Erlang 中处理货币(只有 2 位小数)的推荐数据类型是什么?

postgresql - 使用具有 has_many 关系的结构为数据库播种时找不到列

elixir - 合并两列并搜索它们

elixir - HTTPoison.post 的问题

elixir - Task.async_stream 超时行为

rust - 使用 Elixir 通过 Ports 与 Rust 对话,我哪里出错了?

elixir - 如何从脚本访问项目的 Mixfile?