/
telnov.ob
/
practical_erlang
Обзор
Документация
Войти
/
telnov.ob
/
practical_erlang
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
07_binary_string/solution/template.erl
21 строка
923 B
Yuriy Zhloba
exercise and solution for lesson 7
19 июн 2015, 15:07
19 июн 2015, 15:07
897cfa2
Код
Авторство
О чём код?
-module(template). -export([parse/2]). parse(Str, Data) when is_binary(Str) -> Parts = binary:split(Str, [<<"{{">>], [global]), Parts2 = lists:map(fun(Part) -> case binary:split(Part, [<<"}}">>]) of [PartWithNoParam] -> PartWithNoParam; [Param | Rest] -> case maps:find(Param, Data) of error -> Rest; {ok, Value} when is_binary(Value) orelse is_list(Value) -> [Value, Rest]; {ok, Value} when is_integer(Value) -> [integer_to_binary(Value), Rest] end end end, Parts), unicode:characters_to_binary(Parts2).