JoM*_*ojo 7 ruby arrays replace
我有这样一个数组:
["ee", "3/4\"", "22\"", "22\""]
Run Code Online (Sandbox Code Playgroud)
我想要删除逗号,\"
或者替换它,"
以便数组看起来像这样:
["ee", "3/4", "22", "22"]
Run Code Online (Sandbox Code Playgroud)
或这个:
["ee", "3/4"", "22"", "22""]
Run Code Online (Sandbox Code Playgroud)
原因是我试图将该数组从Ruby传递给JavaScript,但我不断得到一个"未终止的字符串常量错误",我无法找到解决方法!
这就是我用来将信息传递给JavaScript的方法:
cut_list="from_ruby_cut(\""+c[1]+"\")"
Run Code Online (Sandbox Code Playgroud)
Emi*_*ily 11
要使用修改后的版本替换数组中的每个元素,例如替换不需要的字符,可以使用该map!
函数.在块内,用于gsub
替换不需要的"
字符.
array = ["ee", "3/4\"", "22\"", "22\""]
array.map!{ |element| element.gsub(/"/, '') }
array
#=> ["ee", "3/4", "22", "22"]
array.map!{ |element| element.gsub(/"/, '"') }
array
#=> ["ee", "3/4"", "22"", "22""]
Run Code Online (Sandbox Code Playgroud)
但是,您也可以使用c[1].inspect
而不是c[1]
在构建JavaScript字符串时解决问题.如果你使用inspect,它将打印包含封闭引号的字符串,并使用反斜杠来转义字符串中的引号.