我需要这几次,但我没有找到一个好的解决方案 都没找到。
拆分整个节点名称,如
返回的名称node()
,其格式为
FullName = 'node_name@localhost'
我希望拆分节点名称hostname
{ 'node_name', 'localhost'} = split_node_name(FullName)
到目前为止,我已经转换为列表并拆分@,但是 它感觉很难看,应该在标准库中。
答案 0 :(得分:3)
string:tokens
与其他语言中的split()
类似。
A = atom_to_list(node()).
string:tokens(A, "@").
在您的情况下,它将返回['node_name', 'localhost']
。
如果您想要一个元组,请使用list_to_tuple()/1
list_to_tuple(A).
答案 1 :(得分:0)
我想出了类似的东西:
list_to_tuple([list_to_atom(A)||A<-string:tokens(atom_to_list(node()), "@")]).