Wie Codes zu verbessern, dass die Zitate alle array-Elemente mit ` " und gibt eine Zeichenfolge zurück, die alle diese notiert und durch Komma getrennte Elemente?

Ich bin mit Schienen 3.2.2, und ich möchte zitieren, die alle array-Elemente mit ' und geben eine Zeichenfolge zurück, die alle diese notiert und durch Komma getrennte Elemente. In dieser Zeit bin ich mit

['a', 'b', 'c'].collect {|x| "'#{x}'"}.join(", ")
# => "'a', 'b', 'c'"

aber ich glaube ich kann verbessern Sie den obigen code (vielleicht mithilfe eines mir unbekannten Ruby-Methode, wenn es vorhanden ist). Ist es möglich?

  • Was haben Sie scheint gut zu mir.
  • Es gibt nichts zu optimieren, bu Sie können Aliase: map statt collect und * statt join wenn Sie hungern, um Ihren code kleiner: %w[a b c].map{|x|"'#{x}'"}*', '.
  • Was passiert, wenn einer der strings im array enthält eine ' von selbst, z.B. ["a", "b'cd"]?
  • Was Sie haben, ist gut. Auch dies ist pure ruby. Es gibt nichts "Schienen" über es.
  • Nur - Ops!
  • Vielleicht solltest du konvertieren, die auf eine Antwort um diese Frage beantworten?

InformationsquelleAutor Backo | 2012-05-18
Schreibe einen Kommentar