2016-07-10 5 views
0

Ich habe den folgenden Code, der eine Zeichenkette aufnehmen soll, die nicht zwischen a-m liegen und den Betrag der Gesamtlänge der Zeichenkette zurückgeben, zB "3/56"Nicht identifizierter Tidentifier im 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 

ich die folgende Fehlermeldung erhalten, wenn zu laufen versuchen:

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

ich bin nicht sicher, was mein Fehler hier ist, wie ich durch meine Syntax gegangen sind und sehen keine Fehler.

Antwort

1

Sie müssen nur die Dinge bewegen sich ein wenig:

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

Danke dies funktionierte! Gibt es bestimmte Richtlinien für die Syntax, die ich innerhalb von Blöcken verwenden sollte? – John

+0

@John - Keine spezielle Syntax in Blöcken. Sie sind nur Blöcke von Ruby-Code. Holen Sie sich den Ruby richtig und du bist da. – seph

Verwandte Themen