在加入之前转义数组元素

时间:2016-02-26 09:01:05

标签: javascript ruby-on-rails ruby

我有一个数组,其元素中包含特殊字符。让我们说array_1像这样:

array_1 = %w(a b c d' e")
#=> ["a", "b", "c", "d'", "e\""]

我将在代码的后续部分加入它们。像:

array_1.join(",")
#=> "a,b,c,d',e\""

打印该字符串会导致:

a,b,c,d',e"

现在,我需要将java脚本函数中的上述字符串作为字符串本身传递。基本上用单引号括起来。像:

'a,b,c,d',e"'

失败的地方。思考。

3 个答案:

答案 0 :(得分:1)

您可以使用String#inspect。它返回带有特殊字符转义的引号中包含的字符串:

b1

输出:

 A <-- br1
 |\
 | B <-- br2
 | |
 | C
 | |
 | D
 |/
 E
 |
...

答案 1 :(得分:0)

确实

%w(a' b c").map { |e| e.gsub /'|"/, '' }

为你工作?

答案 2 :(得分:0)

使用正则表达式删除单引号和双引号将完成这项工作。检查以下代码。

array_1 = %w(a b c d' e") # your array
str = array_1.join(",")
str.gsub!(/\'|\"/, "") 
puts str # "a,b,c,d,e"