Erlang中文手册(Erldoc.com)  »  ets  »  match/3
Erlang并发编程 Erlang/OTP设计原理 Erlang/OTP[pdf] Mnesia用户手册[pdf] Erlang完整手册[en] 官网手册[en] 模块列表 方法列表 随机 Erlang中文社区(BBS) 美女图库

ets:match/3

根据匹配模式匹配表里的对象数据

用法:

match(Tab, Pattern, Limit) -> {[Match], Continuation} | `$end_of_table`

ets:match/2 一样,都是根据匹配模式 Pattern 匹配表 Tab 里的对象数据,但是 ets:match/3 只返回 Limit 条的匹配数据。返回结果里还同时返回变量 Continuation,这可作为下一次调用 ets:match/1 方法的参数来获取下一批的匹配数据,这比使用 ets:first/1ets:next/2 方法遍历获取表里的对象数据会更快,更有效率。

如果表为空,则返回 '$end_of_table'。

Tab = ets:new(ets_tab, [named_table, bag]),
ets:insert(Tab, [{rufsen, dog, 7}, {brunte, horse, 5}, {ludde, dog, 5}]),
{Match, _Continuation} = ets:match(Tab, '$1', 2),
Match.
Tab = ets:new(ets_tab, [named_table, bag]),
ets:insert(Tab, [{rufsen, dog, 7}, {brunte, horse, 5}, {ludde, dog, 5}]),
ets:match(Tab, {'_', dog, '$1'}, 1).
阿里云 - 最高1000元通用代金券立即可用
沪ICP备13037221号-9