Я программист на Java / C ++, а Ruby - мой первый язык сценариев. Иногда я обнаруживаю, что использую его не так продуктивно, как в некоторых областях, например, например:
Цель: проанализировать только определенные строки из файла. Шаблон, который я использую, состоит в том, что есть одна очень большая линия размером больше 15, остальные определенно меньше. Я хочу игнорировать все строки до (и включая) большую.
def do_something(str)
puts str
end
str =
'ignore me
me too!
LARGE LINE ahahahahha its a line!
target1
target2
target3'
flag1 = nil
str.each_line do |line|
do_something(line) if flag1
flag1 = 1 if line.size > 15
end
Я написал это, но я думаю, что это могло бы быть написано намного лучше, то есть должен быть лучший способ, чем установка флага. Рекомендации по написанию красивых строк на Ruby также приветствуются.
Примечание / Уточнение: Мне нужно напечатать ВСЕ строки ПОСЛЕ первого появления БОЛЬШОЙ ЛИНИИ.