Ich bin wirklich neu in ruby und möchte wissen, ob es möglich ist Überprüfen Sie, ob eine Zeichenfolge nur positive Zahlen enthält, indem Sie ruby string
Natürlich ist Regexp
gut dafür:
Wenn Sie also die Bedingung überprüfen müssen:
%Vor% #to_i
Methode von String
ist für Ihren Fall nicht gültig, weil es eine Zahl zurückgibt, wenn die Zeichenfolge gerade mit Buchstaben übereinstimmt:
Ich benutze Regexp#===
wie folgt:
update (unter Berücksichtigung von @ sawas comment1 und comment2 )
%Vor% Ich habe dies ursprünglich geantwortet, als "nur positive Ziffern" eine Anforderung waren, aber ich sehe, dass dies auf "nur positive Zahlen" (die ursprüngliche Formulierung) geändert wurde, was zum Teil auf das Beispiel zurückzuführen ist Interpretation "12abc34" => true
, "12abc-34" => false
und schlägt nicht die Interpretation "1.5abc" => true
) vor, ich meine "eine positive ganze Zahl". Meine Annahme wird präzisiert durch meine Antwort:
Diese Frage wirft ein anderes auf: "Wie viele Rubies können auf dem Kopf einer Nadel tanzen?". Vielleicht ist es nur ein langsamer Tag. Danke an @sawa und @Mark für ihre Kommentare.