簡體   English   中英

刪除數組中存在的括號

[英]Remove brackets which exists in array

我確實有一個看起來像這樣的數組:

["[0, 1]", "0", "1"]

問題是如何刪除數組內的括號,所以我希望得到的結果是:

["0", "1", "0", "1"]

目前,我不知道...

根據數組元素的特定結構,您可能能夠scan元素以查找看起來像數字的東西,然后使用flat_map展開您從scan獲得的 arrays :

['[0, 1]', '0', '1'].flat_map { |e| e.scan(/\d+/) }
# ["0", "1", "0", "1"] 

這就是我想出的:

["[0, 1]", "0", "1"].to_s.split(/\W/).reject(&:blank?)

如果數組元素可能是嵌套的,那么我會 go 直接到YAMLJSON解析器:

require 'json'
['[0, [1, 0], 1]', '0', '1'].flat_map { |s| JSON.parse(s) }

# => [0, [1, 0], 1, 0, 1]

暫無
暫無

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

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