unless (place =~ /^\./) == 0
Ich weiß, dass das unless wie if not
ist, aber wie ist es mit der Bedingung?
unless (place =~ /^\./) == 0
Ich weiß, dass das unless wie if not
ist, aber wie ist es mit der Bedingung?
Es überprüft, ob der String place
mit einem Punkt .
beginnt.
Betrachten Sie dies:
p ('.foo' =~ /^\./) == 0 # => true
p ('foo' =~ /^\./) == 0 # => false
In diesem Fall wäre es nicht notwendig, == 0
zu verwenden. place =~ /^\./
würde als Bedingung ausreichen:
p '.foo' =~ /^\./ # => 0 # 0 evaluiert in Ruby-Bedingungen zu true
p 'foo' =~ /^\./ # => nil
ÄNDERUNG: /^\./
ist ein regulärer Ausdruck. Die Start- und Endslashes zeigen an, dass es sich um einen regulären Ausdruck handelt, wobei der wichtige Teil auf ^\.
reduziert wird. Das erste Zeichen, ^
, kennzeichnet "Anfang der Zeichenfolge/Zeile" und \.
ist das wörtliche Zeichen .
, da das Punktzeichen normalerweise als spezielles Zeichen in regulären Ausdrücken betrachtet wird.
Weitere Informationen zu regulären Ausdrücken finden Sie unter Wikipedia oder der ausgezeichneten regular-expressions.info Website.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.