【问题标题】:How to get element from an erlang list?如何从 erlang 列表中获取元素?
【发布时间】:2016-05-05 15:54:18
【问题描述】:

我有一个清单 List = [ins_appServer_APP02@mdiaz,ins_appServer_APP04@mdiaz].

我有一个作为参数的原子: AppServerAtom = ins_appServerAPP02@mdiaz

我需要帮助在List 中搜索与AppServerAtom 匹配的元素

用 Erlang 可以做到这一点吗?

【问题讨论】:

  • 你需要什么结果?
  • 不应该是AppServerAtom = ins_appServer_APP02@mdiaz吗?
  • A. Sarid:我需要获取与 AppServerAtom 匹配的元素
  • P_A,我用你说的重复解决它。太棒了

标签: erlang


【解决方案1】:

使用lists:member/2:

List = ['ins_appServer_APP02@mdiaz', 'ins_appServer_APP04@mdiaz'],
case lists:member('ins_appServer_APP02@mdiaz', List) of
  true -> do_something_when_true();
  false -> do_something_when_false()
end.

参见 Erlang 函数参考中的http://erldocs.com/current/stdlib/lists.html?i=0&search=lists:mem#member/2

【讨论】:

    【解决方案2】:

    如果要获取匹配的元素,可以使用lists:filter

    lists:filter(fun(X) -> X == AppServerAtom end, List).
    

    如果你只想检查元素是否在列表中,你可以使用lists:member

    【讨论】:

      猜你喜欢
      • 2021-06-26
      • 2014-06-30
      • 2014-12-16
      • 1970-01-01
      • 2019-05-20
      • 2012-04-04
      • 2011-06-09
      • 2018-11-09
      • 1970-01-01
      相关资源
      最近更新 更多