Как вы можете преобразовать это: "x[a=1,b=2,c=3]"
, который является строкой, в хэш как { x => {'a'=>1, 'b'=>2, 'c'=>3} }
в рубине?Ruby - convert 'array' to hash
ответ
Предполагаю, что первый ключ (x
) должен быть строкой.
def foo(str)
key, rest = str.split("[")
{ key => Hash[rest.gsub("]","").split(",").map { |eqn| k, v = eqn.split("="); [k, v.to_i] }] }
end
foo("x[a=1,b=2,c=3]")
# => {"x"=>{"a"=>1, "b"=>2, "c"=>3}}
Дьявол в деталях. я имел в виду хэш пар ключ-значение. спасибо за указание, что вне –
Это действительно комментарий, но вы не могли бы объяснить это с ограничениями форматирования комментария. Однако нужно было сказать, что +1. Перер, увы, вопрос до сих пор не ясен. Чтобы получить полезный ответ, вам необходимо предоставить контекст того, откуда взялась строка и как вы собираетесь использовать хэш. –
Спасибо @CarySwoveland, исправлено. –
- 1. Ruby Convert String to Hash
- 2. Convert String to Hash
- 3. Ruby mixed array to inested hash
- 4. tcl array to ruby hash parser
- 5. Ruby - Hash to Array - Доступ к клавишам
- 6. Преобразование «Array to Hash» в Ruby
- 7. Convert Array to DayOfWeek
- 8. Convert Object [] to Array()
- 9. Javascript Convert String to Hash
- 10. ruby hash to javascript hash
- 11. Convert Array [Array [Double]] to Array [Double]
- 12. ruby hash to rails
- 13. Ruby: Convert Constant to String
- 14. Хэш в Ruby & Convert python to ruby
- 15. Convert Array list to Sparse Array
- 16. Scala - convert Array [String] to Array [Double]
- 17. Convert jagged int [] [] array to object [] [] array
- 18. Powershell Convert Table To Array
- 19. Javascript Convert Array to Object
- 20. Convert std :: vector to array
- 21. convert wave to byte array
- 22. Convert Integer [] to int [] array
- 23. Прочитать xlsx convert to array
- 24. convert Array to object Angularjs
- 25. Howto convert JSON to Array
- 26. Convert Numpy array to image
- 27. Ruby Hash & Array для xml
- 28. perl array/hash to php
- 29. Array to Hash: count count
- 30. Ruby Can not Convert Hash Into Int
Вы имеете в виду хэш? Ваш пример json-объекта не json. Кроме того, этот массив не похож на массив. Просьба уточнить, с чем вы работаете, и что хотите. – ptd
Извините, я имел в виду хэш. честно говоря, я не знаю, как назвать то, что я пытаюсь преобразовать, но это его формат. Я знаю, это ужасно. –
Как вы его получаете? Как строка? Если это так, вы спрашиваете, как разбирать эту строку в хеш, правильно? – ptd