【发布时间】:2011-02-24 17:28:13
【问题描述】:
我有清单 - Sep1:
[
....
["Message-ID", "AAAAAAAAAAAAAAAAAAA"],
["To", "BBBBBBBBBBBBBBBBB"]
...
]
例如,我尝试获取第一项 = Message_ID 的元素:
lists:filter(fun(Y) -> (lists:nth(1,lists:nth(1,Y)) =:= "Message-ID") end, Sep1).
但我得到错误:
exception error: no function clause matching lists:nth(1,[])
in function utils:'-parse_to/1-fun-1-'/1
in call from lists:'-filter/2-lc$^0/1-0-'/2
但如果我:
io:format(lists:nth(1,lists:nth(1,Sep1))).
> Message-ID
怎么了?
谢谢。
【问题讨论】:
-
lists:filter调用列表中每个元素的乐趣。您下面的代码只是将整个列表传递给lists:nth。 -
Theb 如何按每个列表的第一个元素过滤我的列表?
-
我怀疑您在某个地方还有其他问题。当我将您的
Sep1和您的lists:filter调用复制到我的Erlang shell 中时,我得到[]- 当然不是正确的答案,但与您得到的错误不同。您确定您的Sep1粘贴正确吗?