Einfache Frage, konnte sie aber nicht im Dokument finden.
Wie schneide ich einen String oder ein Array von n
bis für immer?
>> 'Austin'[1..3]
=> "ust"
>> 'Austin'[1..]
SyntaxError: compile error
(irb):2: syntax error, unexpected ']'
from (irb):2
Antworten:
Verwenden Sie die umgekehrte Indizierung:
Ein Element in Ruby (und einigen anderen Sprachen) hat einen direkten und einen "umgekehrten" Index. Zeichenfolge mit Länge
n
hat also0..(n-1)
und zusätzliche(-n)..-1
Indizes, aber nicht mehr - Sie können keine>=n
oder<-n
Indizes verwenden.quelle
Verwende 1 :-)
quelle
Ziemlich elegant mit der endlosen Reichweite, die in Ruby 2.6 eingeführt wurde:
Hoffe das ist praktisch für jemanden. Schneidet ein paar Zeichen vom bisher besten Ansatz ab und ist sehr gut lesbar, wenn regelmäßig endlose Bereiche übernommen werden.
quelle
Wenn Sie die Zeichenfolge einer Variablen zuweisen, können Sie Länge / Größe verwenden
quelle