我試圖用map(&:gsub('-',''))
刪除所有來自陣列中的字符串中的-
,但我有一些困難,瞭解爲什麼它不工作:錯誤而使用array.map(:GSUB)
2.2.2 (main)> my_array = [ 'a-b-c', 'd-e-f', 'g-h-i']
=> [
[0] "a-b-c",
[1] "d-e-f",
[2] "g-h-i"
]
2.2.2 (main)> my_array.map(&:gsub('-',''))
SyntaxError: unexpected ',', expecting end-of-input
my_array.map(&:gsub('-',''))
^
但是,當我嘗試這些,他們的工作
2.2.2 (main)> my_array.map!(&:upcase)
=> [
[0] "A-B-C",
[1] "D-E-F",
[2] "G-H-I"
]
2.2.2 (main)> my_array.map!(&:downcase)
=> [
[0] "a-b-c",
[1] "d-e-f",
[2] "g-h-i"
]
2.2.2 (main)> my_array.map(&:class)
=> [
[0] String < Object,
[1] String < Object,
[2] String < Object
]
2.2.2 (main)> my_array.map{ | element | element.gsub("-", "") }
=> [
[0] "abc",
[1] "def",
[2] "ghi"
]
有誰知道爲什麼我得到這個錯誤與map(&:gsub("-", ""))
?
因爲'('根本就不是在一個有效的字符(沒有引號)'Symbol' literal。 –