2016-07-10 2 views
0

У меня есть следующий код, который предполагается взять в строке букв, проверьте, не находятся ли между a-m и возвращают это количество общей длины строки, например «3/56»,Неопознанный Tidentifier в Ruby Block

def printer_error(s) 
    arr = s.split('') 
    count = 0 
    arr.each {|item| item.include?("n".."z") count += 1} 
    return count.to_s + "/" + arr.length.to_s 
end 

Я получаю следующее сообщение об ошибке при попытке запуска:

-e:5: syntax error, unexpected tIDENTIFIER, expecting '}' 
arr.each {|item| item.include?("n".."z") count += 1} 
              ^

Я не уверен, что моя ошибка здесь, как я прошел через мой синтаксис и не вижу каких-либо ошибок.

ответ

1

Вам просто нужно переместить вещи вокруг немного:

arr.each { |item| count += 1 if ("n".."z").include?(item) } 
+0

Спасибо это сработало! Есть ли определенный набор рекомендаций для синтаксиса, который я должен использовать в блоках? – John

+0

@John - Никакого специального синтаксиса в блоках. Это всего лишь блоки кода Ruby. Верните Руби, и вы там. – seph

Смежные вопросы