常用表达

0xA*_*xAX 2 regex erlang parsing

我有文本文件.我尝试在erlang中解析它.

文字格式:

pattern1 : value1
pattern2 : value2
pattern3 : value3
...
Run Code Online (Sandbox Code Playgroud)

什么正则表达式来解析这个文件?我需要输出中的键值列表:

[{pattern1 : value1}, {pattern1 : value1}, {pattern1 : value1}].
Run Code Online (Sandbox Code Playgroud)

谢谢.

Maz*_*ake 5

在我的头顶:

foo() ->
    {ok, Fd} = file:open("file.txt", [read]),
    process_lines(Fd, file:read_line(Fd), []).

process_lines(_, eof, Acc) -> Acc;
process_lines(Fd, {ok, Line}, Acc) ->
    [Pattern, Value] = string:tokens(Line, " :\n"),
    process_lines(Fd, file:read_line(Fd), [{Pattern,Value}|Acc]).
Run Code Online (Sandbox Code Playgroud)

我没有测试过这段代码,但是这样的代码应该可行.