Dies ist eine Methode zum Erstellen eines Programms, das True zurückgibt, wenn zwei Variablen "a = abc" und "b = HiAbc" vorhanden sind und sich eine der Zeichenfolgen a und b am Ende der anderen Zeichenfolge befindet. In diesem Fall existiert abc von a in den letzten drei Zeichen von b, also ist es wahr.
Es kann mit den folgenden zwei Methoden erstellt werden.
--Downcase-Methode zum Konvertieren von Groß- und Kleinschreibung in Kleinbuchstaben
ruby
a = "AbC"
a_down = a.downcase
//Dies verursacht a_Daunen enthält abc
--Slice-Methode, wenn Sie eine Zeichenfolge an einer bestimmten Position ausschneiden möchten
ruby
a = "AbC"
a_slice = a.slice(1)
//Dies verursacht a_b ist in Scheibe
ruby
def compare(a, b)
a_down = a.downcase
b_down = b.downcase
a_len = a_down.length
b_len = b_down.length
if b_down.slice(-(a_len)..- 1) == a_down || a_down.slice(-(b_len)..- 1) == b_down
puts "True"
else
puts "False"
end
end
Die 2. bis 5. Zeile definieren die Variablen, die danach verwendet werden sollen.
ruby
a_down = a.downcase //Alle Zeichenketten von a werden reduziert, um a zu senken_Daunen ersetzen
b_down = b.downcase //Alle Zeichenketten von b werden reduziert, um a zu senken_Daunen ersetzen
a_len = a_down.length // a_Die Länge der Abwärtszeichenfolge beträgt a_Ersatz für len
b_len = b_down.length // a_Die Länge der Abwärtszeichenfolge beträgt a_Ersatz für len
Danach wird es anhand der folgenden if-Anweisung beurteilt.
ruby
if b_down.slice(-(a_len)..- 1) == a_down || a_down.slice(-(b_len)..- 1) == b_down
puts "True"
else
puts "False"
end
Die japanische Übersetzung von "b_down.slice (- (a_len) ..- 1 == a_down" lautet "1 bis a_len von rechts von b_down ausschneiden". Angenommen, a_len ist "3" und b_down ist "hiabc", wird "1 bis 3 Zeichen von rechts von hiabc abgeschnitten". Dann wird die geschnittene Zeichenkette zu "abc". Beachten Sie, dass die Slice-Methode von Anfang an berechnet wird, wenn Sie einen positiven Wert übergeben, und vom Ende, wenn Sie einen negativen Wert übergeben. ``
Mit dem Operator "oder" für den Fall von b_down und der Bedingung von a_down ist es möglich, von beiden Variablen aus zu prüfen. (Ehrlich gesagt, als ich es zum ersten Mal sah, konnte ich es nicht übersetzen und war depressiv.)
Recommended Posts