Skip to content
instance method

StringScanner#size

() -> ::Integer
size → captures_count

Returns the count of captures if the most recent match attempt succeeded, nil otherwise; see Captures Match Values:

Example
scanner = StringScanner.new('Fri Dec 12 1975 14:39')
scanner.size                        # => nil

pattern = /(?<wday>\w+) (?<month>\w+) (?<day>\d+) /
scanner.match?(pattern)
scanner.values_at(*0..scanner.size) # => ["Fri Dec 12 ", "Fri", "Dec", "12", nil]
scanner.size                        # => 4

scanner.match?(/nope/)              # => nil
scanner.size                        # => nil
See also #scan_until #skip #scan_integer #skip_until also in 4.1 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0