什么是从列表中删除项目的BIF

Hai*_*ang -2 erlang

从列表中删除项目的BIF是什么?

Zed*_*Zed 9

如果要删除给定元素,则列出:delete/2(不是BIF).

如果要删除给定位置的元素,可以执行以下操作:

del_nth_from_list(List, N) ->
  {L1, [_|L2]} = lists:split(N-1, List),
  L1 ++ L2.
Run Code Online (Sandbox Code Playgroud)

如果要删除所有出现,则:

del_all_occurences(List, Elem) ->
  [E || E <- List, E =/= Elem].
Run Code Online (Sandbox Code Playgroud)


jld*_*ont 7

NewList = CurrentList -- Element什么时候Element是一个清单

例如 NewList = CurrentList -- [{some_element}]