簡體   English   中英

Erlang根據保留空子列表的值將列表拆分為子列表?

[英]Erlang split list into sublists based on value preserving empty sublists?

有沒有辦法采取像這樣的Erlang列表:

Values = "Some||pipe|delimited|values"

並將其轉換為子列表列表,保留空子列表? 結果列表如下所示:

["Some", [], "pipe", "delimited", "values"]

(在控制台上,空列表打印為[]而不是"" )。 我嘗試使用string:tokens但它不保留空的子列表:

string:tokens("Some||pipe|delimited|values", "|"). 
%> ["Some","pipe","delimited","values"]

有這么簡單的方法嗎? 也許這可以通過列表推導來實現? 我對Erlang比較新,所以非常感謝任何建議。

正如legoscia所說,你可以使用lists:splitwith/2 此外,您可能需要考慮使用re模塊:

1> Values = "Some||pipe|delimited|values"
"Some||pipe|delimited|values"
2> re:split(Values, "\\|", [{return,list}]).
["Some",[],"pipe","delimited","values"]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM