Ruby idiome pour la sous-chaîne à partir de l'index jusqu'à la fin de la chaîne

Demandais juste si il y a un Rubis idiome pour l'extraction d'une sous-chaîne à partir d'un index jusqu'à la fin de la chaîne. Je sais de str[index..-1] qui fonctionne par le passage d'un objet de la plage à la String's [] méthode, mais c'est un peu maladroit. En python, par exemple, vous pourriez écrire str[index:] qui revient implicitement à vous obtenir le reste de la chaîne.

Exemple:

s = "hello world"
s[6..-1] # <-- "world"

Est-il rien de plus agréable que de s[6..-1]?

  • Je pense explicitement est plus agréable que de implicity dans ce cas.
  • Pourquoi est-Gamme un bruit sourd à cet égard?
  • Qu'entendez-vous avec le bruit sourd?
  • Désolé, j'ai mélangé jusqu'vous avec le propriétaire de cette question.
  • Je pense qu'il est maladroit simplement parce que le -1 de l'indice n'est pas super intuitif.
  • Il est aussi maladroit, parce que 6..-1 est un vide de la gamme. :-/ s[0..5] peut être comprise comme (0..5).map{|i| s[i]}.join mais (6..-1).map{|i| s[i]}.join est une chaîne vide.

InformationsquelleAutor Sherwin Yu | 2013-02-13