Erlang:读取ip地址

Mr.*_*ero 1 erlang erl

我正在尝试使用Erlang获取我的IP地址.

我从这里找到了这个例子:Erlang:找到我的IP地址

local_ip_v4() ->
    {ok, Addrs} = inet:getifaddrs(),
    hd([Addr || {_, Opts} <- Addrs, {addr, Addr} <- Opts, size(Addr) == 4, Addr =/= {127,0,0,1}]).
Run Code Online (Sandbox Code Playgroud)

但它返回如下值: {127,0,0,1}

我希望它返回这样的值:"{127,0,0,1}"用双引号(""),因为我想用re:replace改变,..

我怎样才能做到这一点?

leg*_*cia 11

如果要将IP地址转换为字符串,可以使用以下函数inet:ntoa/1:

> inet:ntoa({127, 0, 0, 1}).
"127.0.0.1"
Run Code Online (Sandbox Code Playgroud)

作为奖励,它也处理IPv6地址:

> inet:ntoa({0,0,0,0,0,0,0,1}).
"::1"
Run Code Online (Sandbox Code Playgroud)