Ruby: leer? ohne Schienen

7

Ich möchte diesen Test haben:

%Vor%

... aber ich bin in reinem Rubin, nicht Schienen. Was ist das akzeptierte Idiom, um denselben Effekt zu erzielen?

Ich mache das für eine Zeichenfolge, wo für .empty testen? ist nicht das gleiche wie Testen für .blank? (Eine Zeichenfolge mit allen Leerzeichen ist nicht leer, sondern leer.)

    
baudot 01.07.2013, 04:10
quelle

5 Antworten

7

Von ActiveSupport

%Vor%     
Kyle 01.07.2013, 04:24
quelle
8

blank? ist nicht nur in String definiert, sondern auch Teil von Nil, da es sich um einen zweifachen Test handelt. Es prüft, ob eine Variable entweder nil? oder empty? / Leerraum ist.

Sie können keine Zeichenkette abfragen, wenn sie null ist, da sie keine nil? -Methode hat, aber Sie können eine Nil fragen, wenn es nil? ist.

Active Support verfügt über Core-Erweiterungen, die uns die benötigte Funktionalität auswählen und die erforderlichen Methoden enthalten. Für blank? können Sie Folgendes tun:

%Vor%

Weitere Informationen finden Sie in der blank? und lesen Sie das gesamte Dokument um zu sehen, was sonst noch verfügbar ist. Wenn Active Support verwendet wird, entfällt die Notwendigkeit, alle AS zu laden und dennoch Funktionen zu erhalten, die nützlich sind.

    
the Tin Man 01.07.2013 05:13
quelle
4

Das ist möglich:

%Vor%     
sawa 01.07.2013 04:16
quelle
1

blank? prüft im Wesentlichen nur empty? || nil? . Sie können entweder die leere Methode selbst erstellen oder beide in Ihren Bedingungen überprüfen.

    
Logan Serman 01.07.2013 04:12
quelle
1
%Vor%

Sie können es in eine leere -Methode in Ihrer Zeile Klasse

einfügen     
mhd 01.07.2013 04:13
quelle

Tags und Links