Ruby 如何从数组元素中删除字符?

Ruby 如何从数组元素中删除字符?,ruby,arrays,replace,Ruby,Arrays,Replace,我有这样一个数组: ["ee", "3/4\"", "22\"", "22\""] ["ee", "3/4", "22", "22"] 我想删除逗号,\“或者用&\34替换它,使数组看起来像这样: ["ee", "3/4\"", "22\"", "22\""] ["ee", "3/4", "22", "22"] 或者这个: ["ee", "3/4&#34", "22&#34", "22&#34"] 原因是我试图将该数组从Ruby传递到JavaScript,但我一

我有这样一个数组:

["ee", "3/4\"", "22\"", "22\""]
["ee", "3/4", "22", "22"]
我想删除逗号,
\“
或者用
&\34
替换它,使数组看起来像这样:

["ee", "3/4\"", "22\"", "22\""]
["ee", "3/4", "22", "22"]
或者这个:

["ee", "3/4&#34", "22&#34", "22&#34"]
原因是我试图将该数组从Ruby传递到JavaScript,但我一直遇到一个“Unterminated string constant error”,我就是想不出解决方法

这是我用来将信息传递给JavaScript的:

cut_list="from_ruby_cut(\""+c[1]+"\")"

要使用修改版本替换数组中的每个元素,例如替换不需要的字符,可以使用
map!
函数。在块内,使用
gsub
替换不需要的
字符

array = ["ee", "3/4\"", "22\"", "22\""]

array.map!{ |element| element.gsub(/"/, '') }
array
#=> ["ee", "3/4", "22", "22"]

array.map!{ |element| element.gsub(/"/, '&#34') }
array
#=> ["ee", "3/4&#34", "22&#34", "22&#34"]

但是,您也可以通过使用
c[1]来解决问题。在构建JavaScript字符串时,请检查
而不是
c[1]
。如果使用inspect,它将打印包含引号的字符串,并使用反斜杠转义字符串中的引号。

以您希望的方式使用
map
和gsub修改数组

a = ["ee", "3/4\"", "22\"", "22\""]
a.map{|e| e.gsub(/"/,'')}
=> ["ee", "3/4", "22", "22"] 


但是,我不确定这是实现最终目标的最佳方式。

您不使用JSON有什么特别的原因吗?是的。。我不知道JSON是什么…:)不幸的是,我对所有这些编程知识都很陌生,所以我的知识非常有限。我将研究JSON,看看这是否有帮助。
&
实体不应该以分号结尾吗?(例如,
和#34;
)使用。检查工作,纯亲切!!不幸的是,对于我来说,这是一个非常简单的解决方案。。。我会仔细考虑你其余的建议,因为它可能在其他时候派上用场。谢谢你,艾米丽!我也不确定这是不是最好的方法,但嘿,学习新东西很有趣。:)谢谢你的回复。