【问题标题】:Extract binary from a list within a list in Erlang从 Erlang 列表中的列表中提取二进制文件
【发布时间】:2014-01-11 01:37:43
【问题描述】:

我在 erlang 列表中的列表中有一个二进制字符串,关于如何仅提取二进制字符串的任何想法

例如。

    Whatihave = [[<<"hello">>]].

    Whatiwant = <<"hello">>.

非常感谢

【问题讨论】:

    标签: erlang


    【解决方案1】:

    有很多方法可以做到这一点:

    1. 使用模式匹配:

      [[Whatiwant]] = Whatihave.
      
    2. 调用hd函数,获取列表的第一个元素,两次:

      Whatiwant = hd(hd(Whatihave)).
      
    3. 调用iolist_to_binary,这是一个更通用的函数,可以将“iolists”(字符串和二进制文件的深层列表)转换为二进制文件:

      Whatiwant = iolist_to_binary(Whatihave).
      

    【讨论】:

    • 谢谢,模式匹配正是我想要的
    【解决方案2】:

    使用模式匹配

    [[Whatiwant]] = [[&lt;&lt;"hello"&gt;&gt;]].

    变量 Whatiwant 包含二进制字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-04
      • 2018-04-07
      • 2011-09-02
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      相关资源
      最近更新 更多