Size: a a a

2019 November 08

Э

Эдем in RubyRush
Скопируй куда-нибудь, чтоб ребята могли повторить и помочь
источник

OE

Orko Elvis in RubyRush
сюда можно?
источник

Э

Эдем in RubyRush
Длинный код лучше на сервисы типа pastebin
источник

OE

Orko Elvis in RubyRush
источник

Э

Эдем in RubyRush
В смысле есть JSON, который сгруппирован по трём строкам.
И если одна из этих строк матчится, то нужно всю группу брать?
источник

OE

Orko Elvis in RubyRush
да
источник

Э

Эдем in RubyRush
А матчится может как ключ, так и значение?
источник

Э

Эдем in RubyRush
Есть метод JSON.parse
источник

OE

Orko Elvis in RubyRush
только значение
источник

Э

Эдем in RubyRush
Делать select той группы, которая сматчилась.
Идея такая. Без более полного кода и примера JSONа (хотя бы две группы) вряд ли кто подскажет.
источник

OE

Orko Elvis in RubyRush
источник

OE

Orko Elvis in RubyRush
мой весь код выше
источник

OE

Orko Elvis in RubyRush
источник

Э

Эдем in RubyRush
На SO заминусили бы такой вопрос.

JSON невалидный — https://jsonlint.com/
А человек, который захочет запустить приложение столкнётся с тем, что не будут определены методы reverse_string, decode и константа ITEM_NOT_FOUND
источник

OE

Orko Elvis in RubyRush
секунду
источник

OE

Orko Elvis in RubyRush
источник

TD

Timur Dmitriev in RubyRush
Ток json поправь
источник

TD

Timur Dmitriev in RubyRush
источник

Э

Эдем in RubyRush
require 'json'

def select_json_elements(path, word)
 word.downcase!
 json = JSON.parse(File.read(path))
 json.each_with_object([]) { |i,a| a << i if i.values.map(&:downcase).grep(Regexp.new(word)).any? }
end

p select_json_elements('data.json', 'array')
источник

Э

Эдем in RubyRush
Метод возвращает массив хэшей, в которых хотя бы одно значение матчится с нужным словом.
Ну а дальше дело техники, как этими данными пользоваться
источник