给出一个字符串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"
似乎会有更清洁的方法来执行此操作。还有另一种方法吗?
答案 0 :(得分:6)
您可以使用二进制模式匹配
$
答案 1 :(得分:0)
出于好奇,这里是一个单行拆分:
# make sure u-umlaut is combined diacritical
[lead, trail] =
str
|> to_charlist()
|> Enum.split(size)
|> Tuple.to_list()
|> Enum.map(&to_string/1)
#⇒ ["üabc", "123"]