instance method at

Ruby on Rails edge

Since v3.0.20

Available in: v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.11.3 v5.0.7.2 v5.1.7 v5.2.8.1 v6.0.6.1 v6.1.7.10 v7.0.10 v7.1.6 v7.2.4 v8.0.5.1 v8.1.4 edge

Signature

at(position)

If you pass a single integer, returns a substring of one character at that

position. The first character of the string is at position 0, the next at
position 1, and so on. If a range is supplied, a substring containing
characters at offsets given by the range is returned. In both cases, if an
offset is negative, it is counted from the end of the string. Returns `nil`
if the initial offset falls outside the string. Returns an empty string if
the beginning of the range is greater than the end of the string.

```
str = "hello"
str.at(0)      # => "h"
str.at(1..3)   # => "ell"
str.at(-2)     # => "l"
str.at(-2..-1) # => "lo"
str.at(5)      # => nil
str.at(5..-1)  # => ""
```

If a Regexp is given, the matching portion of the string is returned.
If a String is given, that given string is returned if it occurs in
the string. In both cases, `nil` is returned if there is no match.

```
str = "hello"
str.at(/lo/) # => "lo"
str.at(/ol/) # => nil
str.at("lo") # => "lo"
str.at("ol") # => nil
```

: (Integer | Range | Regexp | String) -> String?

Parameters

position req
Source
# File activesupport/lib/active_support/core_ext/string/access.rb, line 34
  def at(position)
    self[position]
  end

Defined in activesupport/lib/active_support/core_ext/string/access.rb line 34 · View on GitHub · Improve this page · Find usages on GitHub

Defined in String

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close