我试图从字符串中制作一个数组,然后摆脱字符串周围的引号。

这是我尝试的:

hg = "'Erra', 'Erra-Network', 'Discovery'".split(",")
hg2 = hg.each { |n| n.delete_prefix("'").delete_suffix("'") }
print(hg2)


但不起作用。

输出:

["'Erra'", " 'Erra-Network'", " 'Discovery'"]

最佳答案

尝试使用map而不是each,它将返回一个新的更新后的Array:

hg = "'Erra', 'Erra-Network', 'Discovery'".split(",")
hg2 = hg.map { |n| n.delete_prefix("'").delete_suffix("'") }
print(hg2)


each将对Array中的每个元素执行,但随后将返回原始的未修改的Array。 map实际上返回修改后的数组:https://stackoverflow.com/a/5254192/44733

关于arrays - 如何将逗号分隔的字符串转换为数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60077679/

10-09 10:20