Claus Guttesen wrote:
> Hi.
>
> I need to get the last three characters in a string. I couldn't find a
> function in the String class so I came up with this:
>
> class Remainder
>
>  attr_writer :n
>
>  def initialize(t = "", n = 0)
>    @t = t.to_s
>    @n = n.to_i
>  end
>
>  def get
>    get_remaining_letters
>  end
>
>  private
>  def get_remaining_letters
>    s = @t.size
>    if s < @n
>      r = 0
>    else
>      r = s - @n
>    end
>
>    ft = @t.slice(r, @n)
>  end
>
> end
>
>
> t = Remainder.new("Guttesen", 5)
> puts t.get
> tesen
> t.n = 4
> puts t.get
> esen
>
> Did I reinvent the wheel or does it make sense to add it to String?
>
> regards
> Claus

If the length of the string is less than 3,
the entire string will be returned.

s = "ab"
s[ /.{0,3}$/ ]
s[-3,3] || s